[INFO] cloning repository https://github.com/azah/danmuji
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/azah/danmuji" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fazah%2Fdanmuji", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fazah%2Fdanmuji'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b12ce05b711ee440be2cd9db56dd9ecf4c4fe23b
[INFO] testing azah/danmuji against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fazah%2Fdanmuji" "/workspace/builds/worker-13/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/azah/danmuji on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/azah/danmuji
[INFO] finished tweaking git repo https://github.com/azah/danmuji
[INFO] tweaked toml for git repo https://github.com/azah/danmuji written to /workspace/builds/worker-13/source/Cargo.toml
[INFO] crate git repo https://github.com/azah/danmuji already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0847242c1f6d42bdd194929916ae509be94590eebb54e57eee034babec7e7472
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "0847242c1f6d42bdd194929916ae509be94590eebb54e57eee034babec7e7472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0847242c1f6d42bdd194929916ae509be94590eebb54e57eee034babec7e7472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0847242c1f6d42bdd194929916ae509be94590eebb54e57eee034babec7e7472", kill_on_drop: false }`
[INFO] [stdout] 0847242c1f6d42bdd194929916ae509be94590eebb54e57eee034babec7e7472
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 54e5a8a4da25921b3106444d09354bb7e00c7f0d5be6e3d766413ffcaed13578
[INFO] running `Command { std: "docker" "start" "-a" "54e5a8a4da25921b3106444d09354bb7e00c7f0d5be6e3d766413ffcaed13578", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.2
[INFO] [stderr]    Compiling cc v1.0.41
[INFO] [stderr]    Compiling untrusted v0.7.0
[INFO] [stderr]    Compiling indexmap v1.1.0
[INFO] [stderr]    Compiling serenity v0.7.0
[INFO] [stderr]    Compiling uwl v0.4.2
[INFO] [stderr]    Compiling strfmt v0.1.6
[INFO] [stderr]    Compiling hangeul v0.2.0
[INFO] [stderr]    Compiling array_tool v1.0.3
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling itertools v0.8.0
[INFO] [stderr]    Compiling block-padding v0.1.4
[INFO] [stderr]    Compiling miniz_oxide v0.3.2
[INFO] [stderr]    Compiling tokio-executor v0.1.8
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling iovec v0.1.2
[INFO] [stderr]    Compiling time v0.1.42
[INFO] [stderr]    Compiling net2 v0.2.33
[INFO] [stderr]    Compiling want v0.2.0
[INFO] [stderr]    Compiling pulldown-cmark v0.2.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling threadpool v1.7.1
[INFO] [stderr]    Compiling tokio-timer v0.2.11
[INFO] [stderr]    Compiling tokio-current-thread v0.1.6
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling regex v1.3.0
[INFO] [stderr]    Compiling mime_guess v2.0.1
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling cookie v0.12.0
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling mio v0.6.19
[INFO] [stderr]    Compiling synstructure v0.10.2
[INFO] [stderr]    Compiling diesel_derives v1.4.0
[INFO] [stderr]    Compiling url v2.1.0
[INFO] [stderr]    Compiling sha-1 v0.8.1
[INFO] [stderr]    Compiling tokio-io v0.1.12
[INFO] [stderr]    Compiling http v0.1.18
[INFO] [stderr]    Compiling tokio-buf v0.1.1
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling input_buffer v0.2.0
[INFO] [stderr]    Compiling env_logger v0.6.2
[INFO] [stderr]    Compiling backtrace-sys v0.1.31
[INFO] [stderr]    Compiling ring v0.16.9
[INFO] [stderr]    Compiling miniz-sys v0.1.12
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]    Compiling uuid v0.7.4
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling hanja v0.1.1 (https://github.com/azah/hanja-rs#80db130a)
[INFO] [stderr]    Compiling flate2 v1.0.11
[INFO] [stderr]    Compiling backtrace v0.3.35
[INFO] [stderr]    Compiling error-chain v0.12.1
[INFO] [stderr]    Compiling failure_derive v0.1.5
[INFO] [stderr]    Compiling http-body v0.1.0
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling tungstenite v0.9.1
[INFO] [stderr]    Compiling publicsuffix v1.5.3
[INFO] [stderr]    Compiling webpki v0.21.0
[INFO] [stderr]    Compiling sct v0.6.0
[INFO] [stderr]    Compiling failure v0.1.5
[INFO] [stderr]    Compiling ct-logs v0.6.0
[INFO] [stderr]    Compiling dotenv v0.14.1
[INFO] [stderr]    Compiling rustls v0.16.0
[INFO] [stderr]    Compiling webpki-roots v0.17.0
[INFO] [stderr]    Compiling tokio-rustls v0.10.0
[INFO] [stderr]    Compiling serde_derive v1.0.99
[INFO] [stderr]    Compiling command_attr v0.1.5
[INFO] [stderr]    Compiling serde v1.0.99
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling serde_json v1.0.40
[INFO] [stderr]    Compiling chrono v0.4.8
[INFO] [stderr]    Compiling serde_urlencoded v0.5.5
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling memoffset v0.5.1
[INFO] [stderr]    Compiling parking_lot_core v0.5.0
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling parking_lot v0.8.0
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling hyper v0.12.33
[INFO] [stderr]    Compiling crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling cargo_metadata v0.6.4
[INFO] [stderr]    Compiling cookie_store v0.7.0
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.2
[INFO] [stderr]    Compiling crossbeam-deque v0.7.1
[INFO] [stderr]    Compiling tokio-reactor v0.1.9
[INFO] [stderr]    Compiling r2d2 v0.8.5
[INFO] [stderr]    Compiling tokio-threadpool v0.1.15
[INFO] [stderr]    Compiling rayon-core v1.6.0
[INFO] [stderr]    Compiling tokio-tcp v0.1.3
[INFO] [stderr]    Compiling skeptic v0.13.4
[INFO] [stderr]    Compiling diesel v1.4.2
[INFO] [stderr]    Compiling rayon v1.2.0
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling hey_listen v0.4.0
[INFO] [stderr]    Compiling white_rabbit v0.1.1
[INFO] [stderr]    Compiling hyper-rustls v0.17.1
[INFO] [stderr]    Compiling reqwest v0.9.20
[INFO] [stderr]    Compiling migrations_internals v1.4.0
[INFO] [stderr]    Compiling migrations_macros v1.4.0
[INFO] [stderr]    Compiling diesel_migrations v1.4.0
[INFO] [stderr]    Compiling danmuji v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/commands/channels.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hangeul::is_hangeul`
[INFO] [stdout]  --> src/commands/hanja.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use hangeul::is_hangeul;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CommandError`
[INFO] [stdout]  --> src/commands/hanja.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         CommandError, CommandResult,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/reminders.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | ) -> Box<Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Colour`
[INFO] [stdout]   --> src/commands/roles.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 |     utils::{parse_role, Colour},
[INFO] [stdout]    |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Role`, `checks::*`
[INFO] [stdout]   --> src/commands/roles.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::{checks::*, db, models::role::{NewRole, Role}, utils};
[INFO] [stdout]    |             ^^^^^^^^^                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `compose_char`
[INFO] [stdout]  --> src/utils/hangeul.rs:1:56
[INFO] [stdout]   |
[INFO] [stdout] 1 | use hangeul::{is_jamo, is_compat_jamo, decompose_char, compose_char};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:14:47
[INFO] [stdout]    |
[INFO] [stdout] 14 |             error!("Unable to reply: {}", err.description());
[INFO] [stdout]    |                                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:15:34
[INFO] [stdout]    |
[INFO] [stdout] 15 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:24:45
[INFO] [stdout]    |
[INFO] [stdout] 24 |             error!("Unable to say: {}", err.description());
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:25:34
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:37:54
[INFO] [stdout]    |
[INFO] [stdout] 37 |             error!("Unable to send message: {}", err.description());
[INFO] [stdout]    |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:38:34
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role_id`
[INFO] [stdout]   --> src/commands/roles.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let role_id = match parse_role(roles[0]) {
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role_id`
[INFO] [stdout]   --> src/commands/roles.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let role_id = match parse_role(roles[0]) {
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands/roles.rs:31:49
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn enable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stdout]    |                                                 ----^^^^
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands/roles.rs:78:50
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn disable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stdout]    |                                                  ----^^^^
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3m 19s
[INFO] running `Command { std: "docker" "inspect" "54e5a8a4da25921b3106444d09354bb7e00c7f0d5be6e3d766413ffcaed13578", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54e5a8a4da25921b3106444d09354bb7e00c7f0d5be6e3d766413ffcaed13578", kill_on_drop: false }`
[INFO] [stdout] 54e5a8a4da25921b3106444d09354bb7e00c7f0d5be6e3d766413ffcaed13578
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a44bcf0598dfebce1e2c2d683c9512477c160382364792ff59a331fae20c163d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a44bcf0598dfebce1e2c2d683c9512477c160382364792ff59a331fae20c163d", kill_on_drop: false }`
[INFO] [stderr]    Compiling predicates-core v1.0.0
[INFO] [stderr]    Compiling treeline v0.1.0
[INFO] [stderr]    Compiling normalize-line-endings v0.2.2
[INFO] [stderr]    Compiling downcast v0.10.0
[INFO] [stderr]    Compiling fragile v0.3.0
[INFO] [stderr]    Compiling float-cmp v0.4.0
[INFO] [stderr]    Compiling mockall_derive v0.4.0
[INFO] [stderr]    Compiling predicates-tree v1.0.0
[INFO] [stderr]    Compiling predicates v1.0.1
[INFO] [stderr]    Compiling mockall v0.4.0
[INFO] [stderr]    Compiling danmuji v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/commands/channels.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hangeul::is_hangeul`
[INFO] [stdout]  --> src/commands/hanja.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use hangeul::is_hangeul;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CommandError`
[INFO] [stdout]  --> src/commands/hanja.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         CommandError, CommandResult,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/reminders.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | ) -> Box<Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Colour`
[INFO] [stdout]   --> src/commands/roles.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 |     utils::{parse_role, Colour},
[INFO] [stdout]    |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Role`, `checks::*`
[INFO] [stdout]   --> src/commands/roles.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::{checks::*, db, models::role::{NewRole, Role}, utils};
[INFO] [stdout]    |             ^^^^^^^^^                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `compose_char`
[INFO] [stdout]  --> src/utils/hangeul.rs:1:56
[INFO] [stdout]   |
[INFO] [stdout] 1 | use hangeul::{is_jamo, is_compat_jamo, decompose_char, compose_char};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:14:47
[INFO] [stdout]    |
[INFO] [stdout] 14 |             error!("Unable to reply: {}", err.description());
[INFO] [stdout]    |                                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:15:34
[INFO] [stdout]    |
[INFO] [stdout] 15 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:24:45
[INFO] [stdout]    |
[INFO] [stdout] 24 |             error!("Unable to say: {}", err.description());
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:25:34
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:37:54
[INFO] [stdout]    |
[INFO] [stdout] 37 |             error!("Unable to send message: {}", err.description());
[INFO] [stdout]    |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/utils/discord.rs:38:34
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Err(CommandError(err.description().into()))
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role_id`
[INFO] [stdout]   --> src/commands/roles.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let role_id = match parse_role(roles[0]) {
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role_id`
[INFO] [stdout]   --> src/commands/roles.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let role_id = match parse_role(roles[0]) {
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands/roles.rs:31:49
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn enable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stdout]    |                                                 ----^^^^
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands/roles.rs:78:50
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn disable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stdout]    |                                                  ----^^^^
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 30.01s
[INFO] running `Command { std: "docker" "inspect" "a44bcf0598dfebce1e2c2d683c9512477c160382364792ff59a331fae20c163d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a44bcf0598dfebce1e2c2d683c9512477c160382364792ff59a331fae20c163d", kill_on_drop: false }`
[INFO] [stdout] a44bcf0598dfebce1e2c2d683c9512477c160382364792ff59a331fae20c163d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 64b79674c4ffd59979ee44b6542d31698b20e9b0ad15ac4be8ddb15337012290
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "64b79674c4ffd59979ee44b6542d31698b20e9b0ad15ac4be8ddb15337012290", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `log::info`
[INFO] [stderr]  --> src/commands/channels.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use log::info;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `hangeul::is_hangeul`
[INFO] [stderr]  --> src/commands/hanja.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use hangeul::is_hangeul;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CommandError`
[INFO] [stderr]  --> src/commands/hanja.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |         CommandError, CommandResult,
[INFO] [stderr]   |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/reminders.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | ) -> Box<Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync> {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&DispatchEvent) -> Option<DispatcherRequest> + Send + Sync`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Colour`
[INFO] [stderr]   --> src/commands/roles.rs:10:25
[INFO] [stderr]    |
[INFO] [stderr] 10 |     utils::{parse_role, Colour},
[INFO] [stderr]    |                         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Role`, `checks::*`
[INFO] [stderr]   --> src/commands/roles.rs:13:13
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::{checks::*, db, models::role::{NewRole, Role}, utils};
[INFO] [stderr]    |             ^^^^^^^^^                              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `compose_char`
[INFO] [stderr]  --> src/utils/hangeul.rs:1:56
[INFO] [stderr]   |
[INFO] [stderr] 1 | use hangeul::{is_jamo, is_compat_jamo, decompose_char, compose_char};
[INFO] [stderr]   |                                                        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:14:47
[INFO] [stderr]    |
[INFO] [stderr] 14 |             error!("Unable to reply: {}", err.description());
[INFO] [stderr]    |                                               ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:15:34
[INFO] [stderr]    |
[INFO] [stderr] 15 |             Err(CommandError(err.description().into()))
[INFO] [stderr]    |                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:24:45
[INFO] [stderr]    |
[INFO] [stderr] 24 |             error!("Unable to say: {}", err.description());
[INFO] [stderr]    |                                             ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:25:34
[INFO] [stderr]    |
[INFO] [stderr] 25 |             Err(CommandError(err.description().into()))
[INFO] [stderr]    |                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:37:54
[INFO] [stderr]    |
[INFO] [stderr] 37 |             error!("Unable to send message: {}", err.description());
[INFO] [stderr]    |                                                      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/utils/discord.rs:38:34
[INFO] [stderr]    |
[INFO] [stderr] 38 |             Err(CommandError(err.description().into()))
[INFO] [stderr]    |                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `role_id`
[INFO] [stderr]   --> src/commands/roles.rs:37:17
[INFO] [stderr]    |
[INFO] [stderr] 37 |             let role_id = match parse_role(roles[0]) {
[INFO] [stderr]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `role_id`
[INFO] [stderr]   --> src/commands/roles.rs:84:17
[INFO] [stderr]    |
[INFO] [stderr] 84 |             let role_id = match parse_role(roles[0]) {
[INFO] [stderr]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_role_id`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/commands/roles.rs:31:49
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn enable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stderr]    |                                                 ----^^^^
[INFO] [stderr]    |                                                 |
[INFO] [stderr]    |                                                 help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/commands/roles.rs:78:50
[INFO] [stderr]    |
[INFO] [stderr] 78 | pub fn disable(ctx: &mut Context, msg: &Message, mut args: Args) -> CommandResult {
[INFO] [stderr]    |                                                  ----^^^^
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.46s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/danmuji-83b99be7e9435f3f
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test models::reply::tests::it_sorts_replies ... ok
[INFO] [stdout] test handler::tests::it_filters_links_at_start_messages ... ok
[INFO] [stdout] test utils::hangeul::tests::it_counts_jamos ... ok
[INFO] [stdout] test utils::hangeul::tests::it_converts_hangeul_to_ascii ... ok
[INFO] [stdout] test handler::tests::it_filters_or_doesnt_correctly_in_general ... ok
[INFO] [stdout] test utils::general::tests::it_doesnt_strip_hangul ... ok
[INFO] [stdout] test utils::general::tests::it_strips_numbers_and_punctuation ... ok
[INFO] [stdout] test utils::general::tests::it_strips_mentions ... ok
[INFO] [stdout] test utils::general::tests::it_strips_emoji ... ok
[INFO] [stdout] test utils::general::tests::it_parses_chars_with_punctuation ... ok
[INFO] [stdout] test utils::general::tests::it_parses_chars_with_quotes ... ok
[INFO] [stdout] test utils::general::tests::it_parses_in_general ... ok
[INFO] [stdout] test utils::general::tests::it_parses_max_length_msg ... ok
[INFO] [stdout] test utils::general::tests::it_parses_chars_correctly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "64b79674c4ffd59979ee44b6542d31698b20e9b0ad15ac4be8ddb15337012290", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "64b79674c4ffd59979ee44b6542d31698b20e9b0ad15ac4be8ddb15337012290", kill_on_drop: false }`
[INFO] [stdout] 64b79674c4ffd59979ee44b6542d31698b20e9b0ad15ac4be8ddb15337012290
