[INFO] cloning repository https://github.com/haruki-nikaidou/ln-scrape
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/haruki-nikaidou/ln-scrape" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fharuki-nikaidou%2Fln-scrape", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fharuki-nikaidou%2Fln-scrape'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a3533591fa80c7cf88a16be328a56dc23c5eef4a
[INFO] testing haruki-nikaidou/ln-scrape against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fharuki-nikaidou%2Fln-scrape" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/haruki-nikaidou/ln-scrape
[INFO] finished tweaking git repo https://github.com/haruki-nikaidou/ln-scrape
[INFO] tweaked toml for git repo https://github.com/haruki-nikaidou/ln-scrape written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/haruki-nikaidou/ln-scrape on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/haruki-nikaidou/ln-scrape 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 16d5461d138498ea6dc83acb6e27db05296c07ab2d0d55353aeea8c2949508fd
[INFO] running `Command { std: "docker" "start" "-a" "16d5461d138498ea6dc83acb6e27db05296c07ab2d0d55353aeea8c2949508fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "16d5461d138498ea6dc83acb6e27db05296c07ab2d0d55353aeea8c2949508fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "16d5461d138498ea6dc83acb6e27db05296c07ab2d0d55353aeea8c2949508fd", kill_on_drop: false }`
[INFO] [stdout] 16d5461d138498ea6dc83acb6e27db05296c07ab2d0d55353aeea8c2949508fd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f3c747577cc3d787ac1a07dfa7e0990d1c404e78d4f2f921711f351237004991
[INFO] running `Command { std: "docker" "start" "-a" "f3c747577cc3d787ac1a07dfa7e0990d1c404e78d4f2f921711f351237004991", kill_on_drop: false }`
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling syn v2.0.71
[INFO] [stderr]    Compiling socket2 v0.5.7
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling cc v1.1.1
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling serde v1.0.204
[INFO] [stderr]    Compiling http v1.1.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling httparse v1.9.4
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling string_cache_codegen v0.5.2
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling zstd-safe v7.2.1
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling markup5ever v0.11.0
[INFO] [stderr]    Compiling phf v0.10.1
[INFO] [stderr]    Compiling dtoa v1.0.9
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling dtoa-short v0.3.5
[INFO] [stderr]    Compiling brotli-decompressor v4.0.1
[INFO] [stderr]    Compiling unicode-normalization v0.1.23
[INFO] [stderr]    Compiling string_cache v0.8.7
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling servo_arc v0.3.0
[INFO] [stderr]    Compiling brotli v6.0.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling flate2 v1.0.33
[INFO] [stderr]    Compiling http-body-util v0.1.2
[INFO] [stderr]    Compiling rustls-pki-types v1.7.0
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling openssl-sys v0.9.102
[INFO] [stderr]    Compiling zstd-sys v2.0.13+zstd.1.5.6
[INFO] [stderr]    Compiling rustls-pemfile v2.1.2
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling url v2.5.2
[INFO] [stderr]    Compiling openssl v0.10.64
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling sync_wrapper v1.0.1
[INFO] [stderr]    Compiling ego-tree v0.6.2
[INFO] [stderr]    Compiling fastrand v2.1.0
[INFO] [stderr]    Compiling retry v2.0.0
[INFO] [stderr]    Compiling serde_json v1.0.120
[INFO] [stderr]    Compiling fake_user_agent v0.2.1
[INFO] [stderr]    Compiling regex v1.10.5
[INFO] [stderr]    Compiling zstd v0.13.2
[INFO] [stderr]    Compiling tokio-macros v2.3.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling html5ever v0.26.0
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]    Compiling async-trait v0.1.81
[INFO] [stderr]    Compiling tokio v1.38.0
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]    Compiling cssparser v0.31.2
[INFO] [stderr]    Compiling tokio-util v0.7.11
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling async-compression v0.4.12
[INFO] [stderr]    Compiling scraper v0.19.0
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling h2 v0.4.5
[INFO] [stderr]    Compiling hyper v1.4.1
[INFO] [stderr]    Compiling hyper-util v0.1.6
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.5
[INFO] [stderr]    Compiling fuckbilinovel-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Catalog` and `Volume`
[INFO] [stdout]  --> src/ln_source/bili/parser.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::scrape::{Catalog, NovelInfo, Volume};
[INFO] [stdout]   |                     ^^^^^^^             ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `novel`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:39
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_novel`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:58
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:41
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:60
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:31
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_src`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BiliNovelSource` is never constructed
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct BiliNovelSource;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SOURCE_URL` is never used
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const SOURCE_URL: &str = "https://www.bilinovel.com";
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_novel_id` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(super) fn get_novel_id(url: &Url) -> Option<i32> {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_info_url` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(super) fn get_info_url(id: i32) -> Url {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_catalog_url` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:21:15
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(super) fn get_catalog_url(id: i32) -> Url {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_cloudflare_block` is never used
[INFO] [stdout]  --> src/ln_source/bili/parser.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(super) fn detect_cloudflare_block(html: &Html) -> bool {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_info_page` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(super) fn parse_info_page(html: Html, id: i32, url: Url) -> Result<NovelInfo> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FromSingleLiNode` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:67:6
[INFO] [stdout]    |
[INFO] [stdout] 67 | enum FromSingleLiNode {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_li_element` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn parse_li_element(li: scraper::ElementRef) -> Result<FromSingleLiNode> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_volumes_li_elements` is never used
[INFO] [stdout]    --> src/ln_source/bili/parser.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn parse_volumes_li_elements(doc: Html) -> Vec<FromSingleLiNode> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/scrape/source.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog>;
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                          ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog<'life0>>;
[INFO] [stdout]    |                                                                                                                    ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:32
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                                  ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog<'life0>> {
[INFO] [stdout]    |                                                                                                                            ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 52s
[INFO] running `Command { std: "docker" "inspect" "f3c747577cc3d787ac1a07dfa7e0990d1c404e78d4f2f921711f351237004991", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3c747577cc3d787ac1a07dfa7e0990d1c404e78d4f2f921711f351237004991", kill_on_drop: false }`
[INFO] [stdout] f3c747577cc3d787ac1a07dfa7e0990d1c404e78d4f2f921711f351237004991
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f0b6a8e7cb86079ac4717096e7a3c7450b47445f22d35dc488d42d4a99b2bd11
[INFO] running `Command { std: "docker" "start" "-a" "f0b6a8e7cb86079ac4717096e7a3c7450b47445f22d35dc488d42d4a99b2bd11", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `Catalog` and `Volume`
[INFO] [stdout]  --> src/ln_source/bili/parser.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::scrape::{Catalog, NovelInfo, Volume};
[INFO] [stdout]   |                     ^^^^^^^             ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `novel`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:39
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_novel`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:58
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:41
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:60
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:31
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_src`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BiliNovelSource` is never constructed
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct BiliNovelSource;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SOURCE_URL` is never used
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const SOURCE_URL: &str = "https://www.bilinovel.com";
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling fuckbilinovel-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `get_novel_id` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(super) fn get_novel_id(url: &Url) -> Option<i32> {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_info_url` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(super) fn get_info_url(id: i32) -> Url {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_catalog_url` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:21:15
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(super) fn get_catalog_url(id: i32) -> Url {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_cloudflare_block` is never used
[INFO] [stdout]  --> src/ln_source/bili/parser.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(super) fn detect_cloudflare_block(html: &Html) -> bool {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_info_page` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(super) fn parse_info_page(html: Html, id: i32, url: Url) -> Result<NovelInfo> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FromSingleLiNode` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:67:6
[INFO] [stdout]    |
[INFO] [stdout] 67 | enum FromSingleLiNode {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_li_element` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn parse_li_element(li: scraper::ElementRef) -> Result<FromSingleLiNode> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_volumes_li_elements` is never used
[INFO] [stdout]    --> src/ln_source/bili/parser.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn parse_volumes_li_elements(doc: Html) -> Vec<FromSingleLiNode> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/scrape/source.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog>;
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                          ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog<'life0>>;
[INFO] [stdout]    |                                                                                                                    ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:32
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                                  ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog<'life0>> {
[INFO] [stdout]    |                                                                                                                            ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Catalog` and `Volume`
[INFO] [stdout]  --> src/ln_source/bili/parser.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::scrape::{Catalog, NovelInfo, Volume};
[INFO] [stdout]   |                     ^^^^^^^             ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `novel`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:39
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_novel`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:58
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:41
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:38:60
[INFO] [stdout]    |
[INFO] [stdout] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:31
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_src`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_sender`
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_novel_id` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(super) fn get_novel_id(url: &Url) -> Option<i32> {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_catalog_url` is never used
[INFO] [stdout]   --> src/ln_source/bili/utils.rs:21:15
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(super) fn get_catalog_url(id: i32) -> Url {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FromSingleLiNode` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:67:6
[INFO] [stdout]    |
[INFO] [stdout] 67 | enum FromSingleLiNode {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_li_element` is never used
[INFO] [stdout]   --> src/ln_source/bili/parser.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn parse_li_element(li: scraper::ElementRef) -> Result<FromSingleLiNode> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_volumes_li_elements` is never used
[INFO] [stdout]    --> src/ln_source/bili/parser.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn parse_volumes_li_elements(doc: Html) -> Vec<FromSingleLiNode> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/scrape/source.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog>;
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                          ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog<'life0>>;
[INFO] [stdout]    |                                                                                                                    ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/ln_source/bili/mod.rs:34:32
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stdout]    |                                ^ this lifetime flows to the output                                                  ------- the lifetime gets resolved as `'life0`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'life0`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog<'life0>> {
[INFO] [stdout]    |                                                                                                                            ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.09s
[INFO] running `Command { std: "docker" "inspect" "f0b6a8e7cb86079ac4717096e7a3c7450b47445f22d35dc488d42d4a99b2bd11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0b6a8e7cb86079ac4717096e7a3c7450b47445f22d35dc488d42d4a99b2bd11", kill_on_drop: false }`
[INFO] [stdout] f0b6a8e7cb86079ac4717096e7a3c7450b47445f22d35dc488d42d4a99b2bd11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7c6e4304ccaca6342dfcc9dc34ce8291453e2663112a43821b9bd449034a71dc
[INFO] running `Command { std: "docker" "start" "-a" "7c6e4304ccaca6342dfcc9dc34ce8291453e2663112a43821b9bd449034a71dc", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `Catalog` and `Volume`
[INFO] [stderr]  --> src/ln_source/bili/parser.rs:6:21
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::scrape::{Catalog, NovelInfo, Volume};
[INFO] [stderr]   |                     ^^^^^^^             ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `novel`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:34:39
[INFO] [stderr]    |
[INFO] [stderr] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stderr]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_novel`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `request_sender`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:34:58
[INFO] [stderr]    |
[INFO] [stderr] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `chapter`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:38:41
[INFO] [stderr]    |
[INFO] [stderr] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stderr]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `request_sender`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:38:60
[INFO] [stderr]    |
[INFO] [stderr] 38 |     async fn get_chapter_content(&self, chapter: &Chapter, request_sender: impl RequestSenderTrait) -> anyhow::Result<Html> {
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `src`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:42:31
[INFO] [stderr]    |
[INFO] [stderr] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stderr]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_src`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `request_sender`
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:42:42
[INFO] [stderr]    |
[INFO] [stderr] 42 |     async fn get_image(&self, src: &str, request_sender: impl RequestSenderTrait) -> anyhow::Result<Vec<u8>> {
[INFO] [stderr]    |                                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_sender`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BiliNovelSource` is never constructed
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct BiliNovelSource;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SOURCE_URL` is never used
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:14:7
[INFO] [stderr]    |
[INFO] [stderr] 14 | const SOURCE_URL: &str = "https://www.bilinovel.com";
[INFO] [stderr]    |       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_novel_id` is never used
[INFO] [stderr]   --> src/ln_source/bili/utils.rs:10:15
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub(super) fn get_novel_id(url: &Url) -> Option<i32> {
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_info_url` is never used
[INFO] [stderr]   --> src/ln_source/bili/utils.rs:17:15
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub(super) fn get_info_url(id: i32) -> Url {
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_catalog_url` is never used
[INFO] [stderr]   --> src/ln_source/bili/utils.rs:21:15
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub(super) fn get_catalog_url(id: i32) -> Url {
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `detect_cloudflare_block` is never used
[INFO] [stderr]  --> src/ln_source/bili/parser.rs:8:15
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub(super) fn detect_cloudflare_block(html: &Html) -> bool {
[INFO] [stderr]   |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_info_page` is never used
[INFO] [stderr]   --> src/ln_source/bili/parser.rs:17:15
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub(super) fn parse_info_page(html: Html, id: i32, url: Url) -> Result<NovelInfo> {
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `FromSingleLiNode` is never used
[INFO] [stderr]   --> src/ln_source/bili/parser.rs:67:6
[INFO] [stderr]    |
[INFO] [stderr] 67 | enum FromSingleLiNode {
[INFO] [stderr]    |      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_li_element` is never used
[INFO] [stderr]   --> src/ln_source/bili/parser.rs:74:4
[INFO] [stderr]    |
[INFO] [stderr] 74 | fn parse_li_element(li: scraper::ElementRef) -> Result<FromSingleLiNode> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_volumes_li_elements` is never used
[INFO] [stderr]    --> src/ln_source/bili/parser.rs:102:4
[INFO] [stderr]     |
[INFO] [stderr] 102 | fn parse_volumes_li_elements(doc: Html) -> Vec<FromSingleLiNode> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/scrape/source.rs:12:32
[INFO] [stderr]    |
[INFO] [stderr] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog>;
[INFO] [stderr]    |                                ^ this lifetime flows to the output                                          ------- the lifetime gets resolved as `'life0`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to consistently use `'life0`
[INFO] [stderr]    |
[INFO] [stderr] 12 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> Result<Catalog<'life0>>;
[INFO] [stderr]    |                                                                                                                    ++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/ln_source/bili/mod.rs:34:32
[INFO] [stderr]    |
[INFO] [stderr] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog> {
[INFO] [stderr]    |                                ^ this lifetime flows to the output                                                  ------- the lifetime gets resolved as `'life0`
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'life0`
[INFO] [stderr]    |
[INFO] [stderr] 34 |     async fn get_novel_catalog(&self, novel: &NovelInfo, request_sender: impl RequestSenderTrait) -> anyhow::Result<Catalog<'life0>> {
[INFO] [stderr]    |                                                                                                                            ++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_novel_id` is never used
[INFO] [stderr]   --> src/ln_source/bili/utils.rs:10:15
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub(super) fn get_novel_id(url: &Url) -> Option<i32> {
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `fuckbilinovel-rs` (lib) generated 19 warnings (run `cargo fix --lib -p fuckbilinovel-rs` to apply 1 suggestion)
[INFO] [stderr] warning: `fuckbilinovel-rs` (lib test) generated 14 warnings (13 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fuckbilinovel_rs-c14563067f511af2)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test ln_source::bili::test::test_get_novel_info ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- ln_source::bili::test::test_get_novel_info stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'ln_source::bili::test::test_get_novel_info' panicked at src/ln_source/bili/mod.rs:56:78:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: error sending request for url (https://www.bilinovel.com/novel/2890.html)
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     0: client error (Connect)
[INFO] [stdout]     1: dns error: failed to lookup address information: Temporary failure in name resolution
[INFO] [stdout]     2: failed to lookup address information: Temporary failure in name resolution
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/result.rs:2079:27
[INFO] [stdout]    2: <fuckbilinovel_rs::ln_source::bili::BiliNovelSource as fuckbilinovel_rs::scrape::source::LightNovelSource>::get_novel_info::{{closure}}
[INFO] [stdout]              at ./src/ln_source/bili/mod.rs:26:20
[INFO] [stdout]    3: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/future/future.rs:133:9
[INFO] [stdout]    4: fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info::{{closure}}
[INFO] [stdout]              at ./src/ln_source/bili/mod.rs:56:72
[INFO] [stdout]    5: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/future/future.rs:133:9
[INFO] [stdout]    6: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/future/future.rs:133:9
[INFO] [stdout]    7: tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:659:73
[INFO] [stdout]    8: tokio::runtime::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/coop.rs:107:5
[INFO] [stdout]    9: tokio::runtime::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/coop.rs:73:5
[INFO] [stdout]   10: tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:659:25
[INFO] [stdout]   11: tokio::runtime::scheduler::current_thread::Context::enter
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:404:19
[INFO] [stdout]   12: tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:658:44
[INFO] [stdout]   13: tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:737:68
[INFO] [stdout]   14: tokio::runtime::context::scoped::Scoped<T>::set
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   15: tokio::runtime::context::set_scheduler::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context.rs:180:38
[INFO] [stdout]   16: std::thread::local::LocalKey<T>::try_with
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   17: std::thread::local::LocalKey<T>::with
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   18: tokio::runtime::context::set_scheduler
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context.rs:180:17
[INFO] [stdout]   19: tokio::runtime::scheduler::current_thread::CoreGuard::enter
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:737:27
[INFO] [stdout]   20: tokio::runtime::scheduler::current_thread::CoreGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:646:24
[INFO] [stdout]   21: tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:175:33
[INFO] [stdout]   22: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   23: tokio::runtime::scheduler::current_thread::CurrentThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:167:9
[INFO] [stdout]   24: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/runtime.rs:347:52
[INFO] [stdout]   25: fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info
[INFO] [stdout]              at ./src/ln_source/bili/mod.rs:57:37
[INFO] [stdout]   26: fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info::{{closure}}
[INFO] [stdout]              at ./src/ln_source/bili/mod.rs:53:35
[INFO] [stdout]   27: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29: test::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:648:18
[INFO] [stdout]   30: test::run_test_in_process::{{closure}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:74
[INFO] [stdout]   31: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   32: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   33: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   34: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   35: test::run_test_in_process
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:27
[INFO] [stdout]   36: test::run_test::{{closure}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:592:43
[INFO] [stdout]   37: test::run_test::{{closure}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:622:41
[INFO] [stdout]   38: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   39: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   40: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   41: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   42: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   43: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   44: std::thread::Builder::spawn_unchecked_::{{closure}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   45: core::ops::function::FnOnce::call_once{{vtable.shim}}
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   47: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   48: std::sys::pal::unix::thread::Thread::new::thread_start
[INFO] [stdout]              at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   49: <unknown>
[INFO] [stdout]   50: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5afe969d1f62 - std::backtrace_rs::backtrace::libunwind::trace::h73a647620bf1c49d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5afe969d1f62 - std::backtrace_rs::backtrace::trace_unsynchronized::hd4d513ed96cb3cb1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5afe969d1f62 - std::sys::backtrace::_print_fmt::h61bb95f7476aafa5
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5afe969d1f62 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha2e7e3a01df69042
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5afe969fb183 - core::fmt::rt::Argument::fmt::hf14163372f0f9a76
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5afe969fb183 - core::fmt::write::h7cb8f63788cd01d2
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x5afe969ce083 - std::io::default_write_fmt::h9ed739ccee8a150c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5afe969ce083 - std::io::Write::write_fmt::h1c0a32da913b32f1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5afe969d1db2 - std::sys::backtrace::BacktraceLock::print::h3ec4d7883eb25e61
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5afe969d34dc - std::panicking::default_hook::{{closure}}::h29548987efd832cb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5afe969d3332 - std::panicking::default_hook::ha25170a15c643514
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x5afe967a93c4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h562adeecbf43c420
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x5afe967a93c4 - test::test_main_with_exit_callback::{{closure}}::h97dd2a879d27e0e4
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5afe969d3fbb - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7e85cbdbda26fdb7
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5afe969d3fbb - std::panicking::rust_panic_with_hook::h0d81afcd829aa24b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5afe969d3c8a - std::panicking::begin_panic_handler::{{closure}}::hc84a33f1202346cf
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x5afe969d2459 - std::sys::backtrace::__rust_end_short_backtrace::h373067a14f6c59aa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x5afe969d391d - __rustc[beb0385846a06d21]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x5afe969f8e10 - core::panicking::panic_fmt::ha33fa2ae772efba9
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5afe969f9216 - core::result::unwrap_failed::hfbbd3c78a73fea3d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/result.rs:1761:5
[INFO] [stdout]   20:     0x5afe9676fcf7 - core::result::Result<T,E>::unwrap::hf98671caf3c935db
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/result.rs:1167:23
[INFO] [stdout]   21:     0x5afe9676fcf7 - fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info::{{closure}}::h7c1f3b19d2775c0a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/ln_source/bili/mod.rs:56:78
[INFO] [stdout]   22:     0x5afe9676abc5 - <core::pin::Pin<P> as core::future::future::Future>::poll::h62a379b3e412b70e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5afe9676abc5 - <core::pin::Pin<P> as core::future::future::Future>::poll::hfd33a476a00d80a7
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x5afe9676abc5 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h81cab29eef6c89a0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:659:73
[INFO] [stdout]   25:     0x5afe9676abc5 - tokio::runtime::coop::with_budget::h00be1cb783ce69f0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/coop.rs:107:5
[INFO] [stdout]   26:     0x5afe9676abc5 - tokio::runtime::coop::budget::hc6b63a38e8d0d869
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/coop.rs:73:5
[INFO] [stdout]   27:     0x5afe9676abc5 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h8f4c6bb000e6b917
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:659:25
[INFO] [stdout]   28:     0x5afe9676abc5 - tokio::runtime::scheduler::current_thread::Context::enter::h5e655989976f4ed9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:404:19
[INFO] [stdout]   29:     0x5afe96769e8b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd33ec66c15529a46
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:658:44
[INFO] [stdout]   30:     0x5afe96769e8b - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::h3e565dc2bc4b078d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:737:68
[INFO] [stdout]   31:     0x5afe96769e8b - tokio::runtime::context::scoped::Scoped<T>::set::h9a632026466169d5
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   32:     0x5afe9676af25 - tokio::runtime::context::set_scheduler::{{closure}}::h5614329fb6f8ed55
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context.rs:180:38
[INFO] [stdout]   33:     0x5afe9676af25 - std::thread::local::LocalKey<T>::try_with::ha2ce4ba70850c17d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   34:     0x5afe9676af25 - std::thread::local::LocalKey<T>::with::h82888b261b69fe0e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   35:     0x5afe9676af25 - tokio::runtime::context::set_scheduler::hd5173cc07bd5336a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context.rs:180:17
[INFO] [stdout]   36:     0x5afe9676af25 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::h3f6c4999b82bbc2a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:737:27
[INFO] [stdout]   37:     0x5afe9676af25 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::hc3a7e90ede9f9cd2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:646:24
[INFO] [stdout]   38:     0x5afe96767062 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h3c7aac493cb26127
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:175:33
[INFO] [stdout]   39:     0x5afe96767062 - tokio::runtime::context::runtime::enter_runtime::hd68e83dfe1484c7d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   40:     0x5afe9676727d - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::hba738b04c4d57657
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/scheduler/current_thread/mod.rs:167:9
[INFO] [stdout]   41:     0x5afe9676727d - tokio::runtime::runtime::Runtime::block_on::ha5b1037c98ed58b4
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.38.0/src/runtime/runtime.rs:347:52
[INFO] [stdout]   42:     0x5afe9676f972 - fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info::hd88cca3cae258921
[INFO] [stdout]                                at /opt/rustwide/workdir/src/ln_source/bili/mod.rs:57:37
[INFO] [stdout]   43:     0x5afe9676a189 - fuckbilinovel_rs::ln_source::bili::test::test_get_novel_info::{{closure}}::h9be3d767e67e63c4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/ln_source/bili/mod.rs:53:35
[INFO] [stdout]   44:     0x5afe9676a189 - core::ops::function::FnOnce::call_once::hfd235349b2458b15
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5afe967aeafb - core::ops::function::FnOnce::call_once::hf84b9c3d864a6959
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5afe967aeafb - test::__rust_begin_short_backtrace::h5724e31441c16fcb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:648:18
[INFO] [stdout]   47:     0x5afe967add3e - test::run_test_in_process::{{closure}}::hbc28c9aa91793d7d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:74
[INFO] [stdout]   48:     0x5afe967add3e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc17b0e238c0f8f3e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   49:     0x5afe967add3e - std::panicking::catch_unwind::do_call::hcdbce0d6dd6c83ce
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   50:     0x5afe967add3e - std::panicking::catch_unwind::h9477967ceea044e8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   51:     0x5afe967add3e - std::panic::catch_unwind::h616a2e249da12e16
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5afe967add3e - test::run_test_in_process::h2758deb0f2e54430
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:27
[INFO] [stdout]   53:     0x5afe967add3e - test::run_test::{{closure}}::habe5cd2564b18aaa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:592:43
[INFO] [stdout]   54:     0x5afe967718e4 - test::run_test::{{closure}}::h9a0a6928f1a15421
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:622:41
[INFO] [stdout]   55:     0x5afe967718e4 - std::sys::backtrace::__rust_begin_short_backtrace::hd68b5332434a22ca
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   56:     0x5afe9677528a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h264ddcc3098eacae
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5afe9677528a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9fa39489749d6f3c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   58:     0x5afe9677528a - std::panicking::catch_unwind::do_call::hb9a1944b9f85100f
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   59:     0x5afe9677528a - std::panicking::catch_unwind::h0c6f100786c0dad8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   60:     0x5afe9677528a - std::panic::catch_unwind::hf6084e2723385823
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5afe9677528a - std::thread::Builder::spawn_unchecked_::{{closure}}::hf0af58ce658143ad
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5afe9677528a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h88a14f9b2e79f9de
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5afe969d7387 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf31256ba38644b65
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   64:     0x5afe969d7387 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h100ad77f3448041b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   65:     0x5afe969d7387 - std::sys::pal::unix::thread::Thread::new::thread_start::h1a22ded422ce395b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   66:     0x759b7dd8aaa4 - <unknown>
[INFO] [stdout]   67:     0x759b7de17a34 - clone
[INFO] [stdout]   68:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     ln_source::bili::test::test_get_novel_info
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "7c6e4304ccaca6342dfcc9dc34ce8291453e2663112a43821b9bd449034a71dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c6e4304ccaca6342dfcc9dc34ce8291453e2663112a43821b9bd449034a71dc", kill_on_drop: false }`
[INFO] [stdout] 7c6e4304ccaca6342dfcc9dc34ce8291453e2663112a43821b9bd449034a71dc
