[INFO] fetching crate spectacles-rest 0.1.2... [INFO] testing spectacles-rest-0.1.2 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145330-1 [INFO] extracting crate spectacles-rest 0.1.2 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate spectacles-rest 0.1.2 [INFO] finished tweaking crates.io crate spectacles-rest 0.1.2 [INFO] tweaked toml for crates.io crate spectacles-rest 0.1.2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate spectacles-rest 0.1.2 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 231 packages to latest compatible versions [INFO] [stderr] Adding env_logger v0.6.2 (available: v0.11.8) [INFO] [stderr] Adding futures v0.1.31 (available: v0.3.31) [INFO] [stderr] Adding hashbrown v0.2.2 (available: v0.16.0) [INFO] [stderr] Adding http v0.1.21 (available: v1.3.1) [INFO] [stderr] Adding parking_lot v0.7.1 (available: v0.12.4) [INFO] [stderr] Adding reqwest v0.9.24 (available: v0.12.23) [INFO] [stderr] Adding tokio v0.1.22 (available: v1.47.1) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hyper-tls v0.3.2 [INFO] [stderr] Downloaded tokio-buf v0.1.1 [INFO] [stderr] Downloaded http-body v0.1.0 [INFO] [stderr] Downloaded spectacles-model v0.2.0 [INFO] [stderr] Downloaded want v0.2.0 [INFO] [stderr] Downloaded try_from v0.3.2 [INFO] [stderr] Downloaded owning_ref v0.4.1 [INFO] [stderr] Downloaded parking_lot_core v0.4.0 [INFO] [stderr] Downloaded hashbrown v0.2.2 [INFO] [stderr] Downloaded reqwest v0.9.24 [INFO] [stderr] Downloaded parking_lot v0.7.1 [INFO] [stderr] Downloaded hyper v0.12.36 [INFO] [stderr] Downloaded cookie v0.12.0 [INFO] [stderr] Downloaded cookie_store v0.7.0 [INFO] [stderr] Downloaded uuid v0.7.4 [INFO] [stderr] Downloaded scopeguard v0.3.3 [INFO] [stderr] Downloaded lock_api v0.1.5 [INFO] [stderr] Downloaded publicsuffix v1.5.6 [INFO] [stderr] Downloaded futures-cpupool v0.1.8 [INFO] [stderr] Downloaded serde_urlencoded v0.5.5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0a52e00701a95819cf252c2c9384c33b0b6e9d5d8dd9e22c04f3bba43af23754 [INFO] running `Command { std: "docker" "start" "-a" "0a52e00701a95819cf252c2c9384c33b0b6e9d5d8dd9e22c04f3bba43af23754", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0a52e00701a95819cf252c2c9384c33b0b6e9d5d8dd9e22c04f3bba43af23754", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a52e00701a95819cf252c2c9384c33b0b6e9d5d8dd9e22c04f3bba43af23754", kill_on_drop: false }` [INFO] [stdout] 0a52e00701a95819cf252c2c9384c33b0b6e9d5d8dd9e22c04f3bba43af23754 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 51ef1a1caf9457ad1713e43dce97359047eac37ad2a4e32ef0fbb96f9fb37374 [INFO] running `Command { std: "docker" "start" "-a" "51ef1a1caf9457ad1713e43dce97359047eac37ad2a4e32ef0fbb96f9fb37374", kill_on_drop: false }` [INFO] [stderr] Compiling futures v0.1.31 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling net2 v0.2.39 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling yoke v0.8.0 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling time v0.1.45 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling zerovec v0.11.4 [INFO] [stderr] Compiling zerotrie v0.2.2 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling parking_lot_core v0.6.3 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling hyper v0.12.36 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling http v0.1.21 [INFO] [stderr] Compiling string v0.2.1 [INFO] [stderr] Compiling owning_ref v0.4.1 [INFO] [stderr] Compiling try_from v0.3.2 [INFO] [stderr] Compiling dtoa v0.4.8 [INFO] [stderr] Compiling scopeguard v0.3.3 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling flate2 v1.1.2 [INFO] [stderr] Compiling cookie v0.12.0 [INFO] [stderr] Compiling serde_urlencoded v0.5.5 [INFO] [stderr] Compiling uuid v0.7.4 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.3 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling lock_api v0.1.5 [INFO] [stderr] Compiling base64 v0.10.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling hashbrown v0.2.2 [INFO] [stderr] Compiling env_logger v0.6.2 [INFO] [stderr] Compiling parking_lot v0.7.1 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling tokio-buf v0.1.1 [INFO] [stderr] Compiling futures-cpupool v0.1.8 [INFO] [stderr] Compiling want v0.2.0 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling icu_properties v2.0.1 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling tokio-uds v0.2.7 [INFO] [stderr] Compiling spectacles-model v0.2.0 [INFO] [stderr] Compiling http-body v0.1.0 [INFO] [stderr] Compiling h2 v0.1.26 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling publicsuffix v1.5.6 [INFO] [stderr] Compiling cookie_store v0.7.0 [INFO] [stderr] Compiling hyper-tls v0.3.2 [INFO] [stderr] Compiling reqwest v0.9.24 [INFO] [stderr] Compiling spectacles-rest v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:251:58 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:61:52 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:96:83 [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:290:61 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:53:26 [INFO] [stdout] | [INFO] [stdout] 53 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:60:36 [INFO] [stdout] | [INFO] [stdout] 60 | Error::Discord(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:61:36 [INFO] [stdout] | [INFO] [stdout] 61 | Error::Reqwest(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 62 | Error::ParseInt(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:63:34 [INFO] [stdout] | [INFO] [stdout] 63 | Error::Timer(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 64 | Error::Io(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:65:33 [INFO] [stdout] | [INFO] [stdout] 65 | Error::Json(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp`: use `timestamp_opt()` instead [INFO] [stdout] --> src/ratelimit.rs:163:51 [INFO] [stdout] | [INFO] [stdout] 163 | (*bucket.lock()).reset = Some(Utc.timestamp(reset_time + diff, 0)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `message` is never read [INFO] [stdout] --> src/ratelimit.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | struct RatelimitResponse { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 23 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RatelimitResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `http` is never read [INFO] [stdout] --> src/ratelimit.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Ratelimter { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 31 | /// The underlying client instance. [INFO] [stdout] 32 | pub http: ReqwestClient, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Ratelimter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `route` is never read [INFO] [stdout] --> src/ratelimit.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct Bucket { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 181 | pub route: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Bucket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.86s [INFO] running `Command { std: "docker" "inspect" "51ef1a1caf9457ad1713e43dce97359047eac37ad2a4e32ef0fbb96f9fb37374", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "51ef1a1caf9457ad1713e43dce97359047eac37ad2a4e32ef0fbb96f9fb37374", kill_on_drop: false }` [INFO] [stdout] 51ef1a1caf9457ad1713e43dce97359047eac37ad2a4e32ef0fbb96f9fb37374 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9f6458df01e3bc69148de6c989650fa08cff4f77748eca0c716b4e240e5c0174 [INFO] running `Command { std: "docker" "start" "-a" "9f6458df01e3bc69148de6c989650fa08cff4f77748eca0c716b4e240e5c0174", kill_on_drop: false }` [INFO] [stderr] Compiling spectacles-rest v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:251:58 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:61:52 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:96:83 [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:290:61 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:53:26 [INFO] [stdout] | [INFO] [stdout] 53 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:60:36 [INFO] [stdout] | [INFO] [stdout] 60 | Error::Discord(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:61:36 [INFO] [stdout] | [INFO] [stdout] 61 | Error::Reqwest(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 62 | Error::ParseInt(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:63:34 [INFO] [stdout] | [INFO] [stdout] 63 | Error::Timer(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 64 | Error::Io(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:65:33 [INFO] [stdout] | [INFO] [stdout] 65 | Error::Json(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp`: use `timestamp_opt()` instead [INFO] [stdout] --> src/ratelimit.rs:163:51 [INFO] [stdout] | [INFO] [stdout] 163 | (*bucket.lock()).reset = Some(Utc.timestamp(reset_time + diff, 0)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `message` is never read [INFO] [stdout] --> src/ratelimit.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | struct RatelimitResponse { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 23 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RatelimitResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `http` is never read [INFO] [stdout] --> src/ratelimit.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Ratelimter { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 31 | /// The underlying client instance. [INFO] [stdout] 32 | pub http: ReqwestClient, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Ratelimter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `route` is never read [INFO] [stdout] --> src/ratelimit.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct Bucket { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 181 | pub route: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Bucket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:251:58 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:61:52 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ratelimit.rs:96:83 [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:290:61 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:53:26 [INFO] [stdout] | [INFO] [stdout] 53 | f.write_str(self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:60:36 [INFO] [stdout] | [INFO] [stdout] 60 | Error::Discord(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:61:36 [INFO] [stdout] | [INFO] [stdout] 61 | Error::Reqwest(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 62 | Error::ParseInt(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:63:34 [INFO] [stdout] | [INFO] [stdout] 63 | Error::Timer(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 64 | Error::Io(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:65:33 [INFO] [stdout] | [INFO] [stdout] 65 | Error::Json(e) => e.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp`: use `timestamp_opt()` instead [INFO] [stdout] --> src/ratelimit.rs:163:51 [INFO] [stdout] | [INFO] [stdout] 163 | (*bucket.lock()).reset = Some(Utc.timestamp(reset_time + diff, 0)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `message` is never read [INFO] [stdout] --> src/ratelimit.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | struct RatelimitResponse { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 23 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RatelimitResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `http` is never read [INFO] [stdout] --> src/ratelimit.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Ratelimter { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 31 | /// The underlying client instance. [INFO] [stdout] 32 | pub http: ReqwestClient, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Ratelimter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `route` is never read [INFO] [stdout] --> src/ratelimit.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct Bucket { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 181 | pub route: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Bucket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.47s [INFO] running `Command { std: "docker" "inspect" "9f6458df01e3bc69148de6c989650fa08cff4f77748eca0c716b4e240e5c0174", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9f6458df01e3bc69148de6c989650fa08cff4f77748eca0c716b4e240e5c0174", kill_on_drop: false }` [INFO] [stdout] 9f6458df01e3bc69148de6c989650fa08cff4f77748eca0c716b4e240e5c0174 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 36638f18cd17b6ad8264d548748fd1a14ab96f58ee917f2fffb6f39079ff2e08 [INFO] running `Command { std: "docker" "start" "-a" "36638f18cd17b6ad8264d548748fd1a14ab96f58ee917f2fffb6f39079ff2e08", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:251:58 [INFO] [stderr] | [INFO] [stderr] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 251 | pub fn request(&self, mut endpt: Endpoint) -> Box + Send> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ratelimit.rs:61:52 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 61 | pub fn enqueue(&mut self, path: String) -> Box + Send> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ratelimit.rs:96:83 [INFO] [stderr] | [INFO] [stderr] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 96 | pub(crate) fn handle_resp(&mut self, path: String, mut resp: Response) -> Box + Send> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:290:61 [INFO] [stderr] | [INFO] [stderr] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 290 | pub fn request_empty(&self, mut endpt: Endpoint) -> Box + Send> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:36:26 [INFO] [stderr] | [INFO] [stderr] 36 | f.write_str(self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:53:26 [INFO] [stderr] | [INFO] [stderr] 53 | f.write_str(self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:60:36 [INFO] [stderr] | [INFO] [stderr] 60 | Error::Discord(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:61:36 [INFO] [stderr] | [INFO] [stderr] 61 | Error::Reqwest(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:62:37 [INFO] [stderr] | [INFO] [stderr] 62 | Error::ParseInt(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:63:34 [INFO] [stderr] | [INFO] [stderr] 63 | Error::Timer(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:64:31 [INFO] [stderr] | [INFO] [stderr] 64 | Error::Io(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:65:33 [INFO] [stderr] | [INFO] [stderr] 65 | Error::Json(e) => e.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp`: use `timestamp_opt()` instead [INFO] [stderr] --> src/ratelimit.rs:163:51 [INFO] [stderr] | [INFO] [stderr] 163 | (*bucket.lock()).reset = Some(Utc.timestamp(reset_time + diff, 0)); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `message` is never read [INFO] [stderr] --> src/ratelimit.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 22 | struct RatelimitResponse { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] 23 | message: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RatelimitResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `http` is never read [INFO] [stderr] --> src/ratelimit.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 30 | pub struct Ratelimter { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 31 | /// The underlying client instance. [INFO] [stderr] 32 | pub http: ReqwestClient, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Ratelimter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `route` is never read [INFO] [stderr] --> src/ratelimit.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 175 | pub struct Bucket { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 181 | pub route: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Bucket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `spectacles-rest` (lib) generated 16 warnings (run `cargo fix --lib -p spectacles-rest` to apply 4 suggestions) [INFO] [stderr] warning: `spectacles-rest` (lib test) generated 16 warnings (16 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/spectacles_rest-1e32aee0324646cf) [INFO] [stdout] [INFO] [stderr] Doc-tests spectacles_rest [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] warning: unknown attribute `norun` [INFO] [stdout] [INFO] [stderr] --> src/lib.rs:1:1 [INFO] [stdout] running 3 tests [INFO] [stderr] | [INFO] [stderr] 1 | / //! # Spectacles REST [INFO] [stderr] 2 | | //! Spectacles REST offers a simple, easy-to-use client for making HTTP requests to the Discord API. [INFO] [stderr] 3 | | //! All HTTP requests are made asynchronously and never block the thread, with the help of the Tokio runtime. [INFO] [stderr] 4 | | //! [INFO] [stderr] ... | [INFO] [stderr] 65 | | //! spectacles-rest = "0.1.0" [INFO] [stderr] 66 | | //! [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = help: use `no_run` to compile, but not run, the code sample during testing [INFO] [stderr] = help: this code block may be skipped during testing, because unknown attributes are treated as markers for code samples written in other programming languages, unless it is also explicitly marked as `rust` [INFO] [stderr] = note: `#[warn(rustdoc::invalid_codeblock_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] test src/lib.rs - (line 51) ... FAILED [INFO] [stdout] test src/lib.rs - (line 29) ... FAILED [INFO] [stdout] test src/lib.rs - (line 7) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 51) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `token` in this scope [INFO] [stdout] --> src/lib.rs:55:28 [INFO] [stdout] | [INFO] [stdout] 7 | let rest = RestClient::new(token, false) // false tells the client to skip the default in memory rate limiter. [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - (line 29) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `token` in this scope [INFO] [stdout] --> src/lib.rs:37:32 [INFO] [stdout] | [INFO] [stdout] 10 | let rest = RestClient::new(token, true); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `CHANNEL_ID_HERE` in this scope [INFO] [stdout] --> src/lib.rs:38:40 [INFO] [stdout] | [INFO] [stdout] 11 | tokio::run(rest.channel(&Snowflake(CHANNEL_ID_HERE)).create_message("Hello World") [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - (line 7) stdout ---- [INFO] [stdout] Test executable failed (exit status: 101). [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] [INFO] [stdout] thread 'main' (66) panicked at src/lib.rs:6:44: [INFO] [stdout] Failed to parse token: NotPresent [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62332cf4e002 - std::backtrace_rs::backtrace::libunwind::trace::h0fb8082ca5562a61 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62332cf4e002 - std::backtrace_rs::backtrace::trace_unsynchronized::hfaa258994374a3cd [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62332cf4e002 - std::sys::backtrace::_print_fmt::h11496fe34963a885 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x62332cf4e002 - ::fmt::hff1a9408d012ee89 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x62332cf6ce4f - core::fmt::rt::Argument::fmt::hf11195b61445f5d1 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x62332cf6ce4f - core::fmt::write::h2f1fc679f228cc52 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x62332cf3f3c3 - std::io::default_write_fmt::hdd5e6d67566e664d [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62332cf3f3c3 - std::io::Write::write_fmt::haa2231cbd9aebf95 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x62332cf4de52 - std::sys::backtrace::BacktraceLock::print::h28bfdbcac6d3828b [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x62332cf3ce6c - std::panicking::default_hook::{{closure}}::h1f968e3a24b0e3b4 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x62332cf3ccb3 - std::panicking::default_hook::h43da101644971931 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:328:9 [INFO] [stdout] 11: 0x62332cf3d3aa - std::panicking::panic_with_hook::hb4e916c3e65eccec [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:834:13 [INFO] [stdout] 12: 0x62332cf4d9da - std::panicking::panic_handler::{{closure}}::hbff715d0475cf1bd [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:707:13 [INFO] [stdout] 13: 0x62332cf4d939 - std::sys::backtrace::__rust_end_short_backtrace::hd6f43484e45a4955 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 14: 0x62332cf3d89d - __rustc[b29d3319de9a3146]::rust_begin_unwind [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:698:5 [INFO] [stdout] 15: 0x62332cf6ff30 - core::panicking::panic_fmt::h5f8d281875be5ff1 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/core/src/panicking.rs:75:14 [INFO] [stdout] 16: 0x62332cf70736 - core::result::unwrap_failed::hbb243a6a8b53218d [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/core/src/result.rs:1852:5 [INFO] [stdout] 17: 0x62332ce8cb74 - core::result::Result::expect::h0e3c441f4236aca0 [INFO] [stdout] 18: 0x62332ce8cc1b - rust_out::main::_doctest_main_src_lib_rs_7_0::h6afc9edc67d99be6 [INFO] [stdout] 19: 0x62332ce8cc46 - rust_out::main::h7e777e61203ca549 [INFO] [stdout] 20: 0x62332ce8ccb3 - core::ops::function::FnOnce::call_once::h894b479a9b16664c [INFO] [stdout] 21: 0x62332ce8cc56 - std::sys::backtrace::__rust_begin_short_backtrace::hcbf029d2da904189 [INFO] [stdout] 22: 0x62332ce8ca69 - std::rt::lang_start::{{closure}}::h3a05cfdeea429f55 [INFO] [stdout] 23: 0x62332cf4e610 - core::ops::function::impls:: for &F>::call_once::h32dc2b2f49a48277 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/core/src/ops/function.rs:290:21 [INFO] [stdout] 24: 0x62332cf4e610 - std::panicking::catch_unwind::do_call::h3353546a38525559 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:590:40 [INFO] [stdout] 25: 0x62332cf4e610 - std::panicking::catch_unwind::h57fb70202d1ae368 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:553:19 [INFO] [stdout] 26: 0x62332cf4e610 - std::panic::catch_unwind::h4b724a52bb5803b4 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panic.rs:359:14 [INFO] [stdout] 27: 0x62332cf4e610 - std::rt::lang_start_internal::{{closure}}::h3724b3072c80532a [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/rt.rs:175:24 [INFO] [stdout] 28: 0x62332cf4e610 - std::panicking::catch_unwind::do_call::h4f6e90f858bd1c3f [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:590:40 [INFO] [stdout] 29: 0x62332cf4e610 - std::panicking::catch_unwind::h81c085c0d350991c [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panicking.rs:553:19 [INFO] [stdout] 30: 0x62332cf4e610 - std::panic::catch_unwind::h289049af1176d82a [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x62332cf4e610 - std::rt::lang_start_internal::h3c37ebeb799b11e1 [INFO] [stdout] at /rustc/350d0ef0ec0493e6d21cfb265cb8211a0e74d766/library/std/src/rt.rs:171:5 [INFO] [stdout] 32: 0x62332ce8ca51 - std::rt::lang_start::h5b53c8738ceaa0f6 [INFO] [stdout] 33: 0x62332ce8ccf5 - main [INFO] [stdout] 34: 0x77c52ff151ca - [INFO] [stdout] 35: 0x77c52ff1528b - __libc_start_main [INFO] [stdout] 36: 0x62332ce8c965 - _start [INFO] [stdout] 37: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - (line 29) [INFO] [stdout] src/lib.rs - (line 51) [INFO] [stdout] src/lib.rs - (line 7) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.72s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "36638f18cd17b6ad8264d548748fd1a14ab96f58ee917f2fffb6f39079ff2e08", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36638f18cd17b6ad8264d548748fd1a14ab96f58ee917f2fffb6f39079ff2e08", kill_on_drop: false }` [INFO] [stdout] 36638f18cd17b6ad8264d548748fd1a14ab96f58ee917f2fffb6f39079ff2e08