[INFO] updating cached repository https://github.com/ianfabs/neovim-spotify
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 2d2cad5d7aed867c3770b257f38c694a470ae710
[INFO] checking ianfabs/neovim-spotify against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fianfabs%2Fneovim-spotify" "/workspace/builds/worker-5/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ianfabs/neovim-spotify on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/ianfabs/neovim-spotify
[INFO] finished tweaking git repo https://github.com/ianfabs/neovim-spotify
[INFO] tweaked toml for git repo https://github.com/ianfabs/neovim-spotify written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] crate git repo https://github.com/ianfabs/neovim-spotify already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stdout] 3acef8bb9669b11b73de9ba9680fda5baa670ca8cf8734544cc80debdbef5606
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `"docker" "start" "-a" "3acef8bb9669b11b73de9ba9680fda5baa670ca8cf8734544cc80debdbef5606"`
[INFO] [stderr]    Compiling serde v1.0.91
[INFO] [stderr]     Checking new_debug_unreachable v1.0.3
[INFO] [stderr]     Checking strum v0.14.0
[INFO] [stderr]     Checking open v1.2.2
[INFO] [stderr]    Compiling backtrace v0.3.20
[INFO] [stderr]     Checking tokio-trace-core v0.1.0
[INFO] [stderr]     Checking tokio-sync v0.1.5
[INFO] [stderr]    Compiling ryu v0.2.8
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking unix_socket v0.5.0
[INFO] [stderr]    Compiling syn v0.13.11
[INFO] [stderr]     Checking openssl-sys v0.9.47
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking mio v0.6.17
[INFO] [stderr]     Checking cookie v0.12.0
[INFO] [stderr]     Checking miniz_oxide_c_api v0.2.1
[INFO] [stderr]     Checking futf v0.1.4
[INFO] [stderr]    Compiling serde_derive v1.0.91
[INFO] [stderr]    Compiling strum_macros v0.14.0
[INFO] [stderr]     Checking rmp v0.8.7
[INFO] [stderr]     Checking rand v0.6.5
[INFO] [stderr]     Checking tendril v0.4.1
[INFO] [stderr]     Checking flate2 v1.0.7
[INFO] [stderr]     Checking tokio-io v0.1.12
[INFO] [stderr]     Checking http v0.1.17
[INFO] [stderr]     Checking tokio-buf v0.1.1
[INFO] [stderr]     Checking failure v0.1.5
[INFO] [stderr]     Checking error-chain v0.12.1
[INFO] [stderr]     Checking openssl v0.10.23
[INFO] [stderr]     Checking dotenv v0.13.0
[INFO] [stderr]     Checking publicsuffix v1.5.2
[INFO] [stderr]     Checking parking_lot_core v0.4.0
[INFO] [stderr]     Checking tokio-threadpool v0.1.14
[INFO] [stderr]     Checking uuid v0.7.4
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling string_cache_codegen v0.4.2
[INFO] [stderr]    Compiling mime_guess v2.0.0-alpha.6
[INFO] [stderr]     Checking tokio-reactor v0.1.9
[INFO] [stderr]    Compiling string_cache v0.7.3
[INFO] [stderr]     Checking tokio-tcp v0.1.3
[INFO] [stderr]     Checking http-body v0.1.0
[INFO] [stderr]     Checking h2 v0.1.20
[INFO] [stderr]     Checking native-tls v0.2.3
[INFO] [stderr]     Checking tokio v0.1.20
[INFO] [stderr]     Checking hyper v0.12.29
[INFO] [stderr]     Checking hyper-tls v0.3.2
[INFO] [stderr]    Compiling html5ever v0.22.3
[INFO] [stderr]     Checking serde_json v1.0.39
[INFO] [stderr]     Checking serde_bytes v0.10.5
[INFO] [stderr]     Checking serde_urlencoded v0.5.5
[INFO] [stderr]     Checking rmpv v0.4.0
[INFO] [stderr]     Checking neovim-lib v0.6.1
[INFO] [stderr]     Checking cookie_store v0.7.0
[INFO] [stderr]    Compiling markup5ever v0.7.5
[INFO] [stderr]     Checking reqwest v0.9.17
[INFO] [stderr]     Checking soup v0.4.1
[INFO] [stderr]     Checking spotify-neovim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] error[E0254]: the name `rand` is defined multiple times
[INFO] [stderr]   --> src/spotify.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 2  | extern crate rand;
[INFO] [stderr]    | ------------------ previous import of the extern crate `rand` here
[INFO] [stderr] ...
[INFO] [stderr] 16 | use rand::{self, Rng};
[INFO] [stderr]    |            ^^^^--
[INFO] [stderr]    |            |
[INFO] [stderr]    |            `rand` reimported here
[INFO] [stderr]    |            help: remove unnecessary import
[INFO] [stderr]    |
[INFO] [stderr]    = note: `rand` must be defined only once in the type namespace of this module
[INFO] [stderr] 
[INFO] [stderr] error: `derive` may only be applied to structs, enums and unions
[INFO] [stderr]    --> src/spotify.rs:107:9
[INFO] [stderr]     |
[INFO] [stderr] 107 |         #[derive(Into)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `EnumString` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:14
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |              ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Serialize` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:26
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:37
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Display` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:50
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:54:11
[INFO] [stderr]    |
[INFO] [stderr] 54 |         #[strum(serialize = "user-read-recently-played")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:56:11
[INFO] [stderr]    |
[INFO] [stderr] 56 |         #[strum(serialize = "user-top-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:59:11
[INFO] [stderr]    |
[INFO] [stderr] 59 |         #[strum(serialize = "user-library-modify")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:61:11
[INFO] [stderr]    |
[INFO] [stderr] 61 |         #[strum(serialize = "user-library-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:64:11
[INFO] [stderr]    |
[INFO] [stderr] 64 |         #[strum(serialize = "playlist-read-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:66:11
[INFO] [stderr]    |
[INFO] [stderr] 66 |         #[strum(serialize = "playlist-modify-public")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:68:11
[INFO] [stderr]    |
[INFO] [stderr] 68 |         #[strum(serialize = "playlist-modify-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:70:11
[INFO] [stderr]    |
[INFO] [stderr] 70 |         #[strum(serialize = "playlist-read-collaborative")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:73:11
[INFO] [stderr]    |
[INFO] [stderr] 73 |         #[strum(serialize = "user-read-email")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:75:11
[INFO] [stderr]    |
[INFO] [stderr] 75 |         #[strum(serialize = "user-read-birthdate")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:77:11
[INFO] [stderr]    |
[INFO] [stderr] 77 |         #[strum(serialize = "user-read-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:80:11
[INFO] [stderr]    |
[INFO] [stderr] 80 |         #[strum(serialize = "user-read-playback-state")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:82:11
[INFO] [stderr]    |
[INFO] [stderr] 82 |         #[strum(serialize = "user-modify-playback-state")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:84:11
[INFO] [stderr]    |
[INFO] [stderr] 84 |         #[strum(serialize = "user-read-currently-playing")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:87:11
[INFO] [stderr]    |
[INFO] [stderr] 87 |         #[strum(serialize = "app-remote-control")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:89:11
[INFO] [stderr]    |
[INFO] [stderr] 89 |         #[strum(serialize = "streaming")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:92:11
[INFO] [stderr]    |
[INFO] [stderr] 92 |         #[strum(serialize = "user-follow-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:94:11
[INFO] [stderr]    |
[INFO] [stderr] 94 |         #[strum(serialize = "user-follow-modify")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Into` in this scope
[INFO] [stderr]    --> src/spotify.rs:107:18
[INFO] [stderr]     |
[INFO] [stderr] 107 |         #[derive(Into)]
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `env`
[INFO] [stderr]    --> src/spotify.rs:119:34
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 client_id: match env::var("CLIENT_ID") {
[INFO] [stderr]     |                                  ^^^ use of undeclared type or module `env`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Url`
[INFO] [stderr]    --> src/spotify.rs:124:31
[INFO] [stderr]     |
[INFO] [stderr] 124 |                 redirect_uri: Url::parse(
[INFO] [stderr]     |                               ^^^ use of undeclared type or module `Url`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `env`
[INFO] [stderr]    --> src/spotify.rs:125:22
[INFO] [stderr]     |
[INFO] [stderr] 125 |                     &env::var("REDIRECT_URI")
[INFO] [stderr]     |                      ^^^ use of undeclared type or module `env`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Url` in this scope
[INFO] [stderr]    --> src/spotify.rs:103:27
[INFO] [stderr]     |
[INFO] [stderr] 103 |         pub redirect_uri: Url,
[INFO] [stderr]     |                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use reqwest::Url;
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use url::Url;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0423]: expected function, found crate `dotenv`
[INFO] [stderr]    --> src/spotify.rs:116:13
[INFO] [stderr]     |
[INFO] [stderr] 116 |             dotenv().ok();
[INFO] [stderr]     |             ^^^^^^ not a function
[INFO] [stderr]     |
[INFO] [stderr] help: possible better candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use dotenv::dotenv;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/neovim.rs:37:18
[INFO] [stderr]    |
[INFO] [stderr] 37 |     spotify: Box<SpotifyAPI>,
[INFO] [stderr]    |                  ^^^^^^^^^^ help: use `dyn`: `dyn SpotifyAPI`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize`, `Deserializer`, `Serialize`
[INFO] [stderr]   --> src/spotify.rs:10:13
[INFO] [stderr]    |
[INFO] [stderr] 10 | use serde::{Deserialize, Deserializer, Serialize};
[INFO] [stderr]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::Value`
[INFO] [stderr]   --> src/spotify.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use serde_json::Value;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Display`, `EnumString`
[INFO] [stderr]   --> src/spotify.rs:12:20
[INFO] [stderr]    |
[INFO] [stderr] 12 | use strum_macros::{Display, EnumString};
[INFO] [stderr]    |                    ^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `dotenv::dotenv`
[INFO] [stderr]   --> src/spotify.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use dotenv::dotenv;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `url::Url`
[INFO] [stderr]   --> src/spotify.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use url::Url;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `reqwest::Client`
[INFO] [stderr]   --> src/spotify.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use reqwest::Client;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Rng`, `self`
[INFO] [stderr]   --> src/spotify.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | use rand::{self, Rng};
[INFO] [stderr]    |            ^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/spotify.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]   --> src/spotify.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use std::env;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]   --> src/spotify.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use std::io::Read;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]   --> src/spotify.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use std::str::FromStr;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::string::ToString`
[INFO] [stderr]   --> src/spotify.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | use std::string::ToString;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0254]: the name `rand` is defined multiple times
[INFO] [stderr]   --> src/spotify.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 2  | extern crate rand;
[INFO] [stderr]    | ------------------ previous import of the extern crate `rand` here
[INFO] [stderr] ...
[INFO] [stderr] 16 | use rand::{self, Rng};
[INFO] [stderr]    |            ^^^^--
[INFO] [stderr]    |            |
[INFO] [stderr]    |            `rand` reimported here
[INFO] [stderr]    |            help: remove unnecessary import
[INFO] [stderr]    |
[INFO] [stderr]    = note: `rand` must be defined only once in the type namespace of this module
[INFO] [stderr] 
[INFO] [stderr] error: `derive` may only be applied to structs, enums and unions
[INFO] [stderr]    --> src/spotify.rs:107:9
[INFO] [stderr]     |
[INFO] [stderr] 107 |         #[derive(Into)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `EnumString` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:14
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |              ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Serialize` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:26
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:37
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Display` in this scope
[INFO] [stderr]   --> src/spotify.rs:52:50
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[derive(EnumString, Serialize, Deserialize, Display, Debug, Clone, PartialEq)]
[INFO] [stderr]    |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:54:11
[INFO] [stderr]    |
[INFO] [stderr] 54 |         #[strum(serialize = "user-read-recently-played")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:56:11
[INFO] [stderr]    |
[INFO] [stderr] 56 |         #[strum(serialize = "user-top-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:59:11
[INFO] [stderr]    |
[INFO] [stderr] 59 |         #[strum(serialize = "user-library-modify")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:61:11
[INFO] [stderr]    |
[INFO] [stderr] 61 |         #[strum(serialize = "user-library-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:64:11
[INFO] [stderr]    |
[INFO] [stderr] 64 |         #[strum(serialize = "playlist-read-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:66:11
[INFO] [stderr]    |
[INFO] [stderr] 66 |         #[strum(serialize = "playlist-modify-public")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:68:11
[INFO] [stderr]    |
[INFO] [stderr] 68 |         #[strum(serialize = "playlist-modify-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:70:11
[INFO] [stderr]    |
[INFO] [stderr] 70 |         #[strum(serialize = "playlist-read-collaborative")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:73:11
[INFO] [stderr]    |
[INFO] [stderr] 73 |         #[strum(serialize = "user-read-email")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:75:11
[INFO] [stderr]    |
[INFO] [stderr] 75 |         #[strum(serialize = "user-read-birthdate")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:77:11
[INFO] [stderr]    |
[INFO] [stderr] 77 |         #[strum(serialize = "user-read-private")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:80:11
[INFO] [stderr]    |
[INFO] [stderr] 80 |         #[strum(serialize = "user-read-playback-state")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:82:11
[INFO] [stderr]    |
[INFO] [stderr] 82 |         #[strum(serialize = "user-modify-playback-state")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:84:11
[INFO] [stderr]    |
[INFO] [stderr] 84 |         #[strum(serialize = "user-read-currently-playing")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:87:11
[INFO] [stderr]    |
[INFO] [stderr] 87 |         #[strum(serialize = "app-remote-control")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:89:11
[INFO] [stderr]    |
[INFO] [stderr] 89 |         #[strum(serialize = "streaming")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:92:11
[INFO] [stderr]    |
[INFO] [stderr] 92 |         #[strum(serialize = "user-follow-read")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `strum` in this scope
[INFO] [stderr]   --> src/spotify.rs:94:11
[INFO] [stderr]    |
[INFO] [stderr] 94 |         #[strum(serialize = "user-follow-modify")]
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: cannot find derive macro `Into` in this scope
[INFO] [stderr]    --> src/spotify.rs:107:18
[INFO] [stderr]     |
[INFO] [stderr] 107 |         #[derive(Into)]
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `env`
[INFO] [stderr]    --> src/spotify.rs:119:34
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 client_id: match env::var("CLIENT_ID") {
[INFO] [stderr]     |                                  ^^^ use of undeclared type or module `env`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Url`
[INFO] [stderr]    --> src/spotify.rs:124:31
[INFO] [stderr]     |
[INFO] [stderr] 124 |                 redirect_uri: Url::parse(
[INFO] [stderr]     |                               ^^^ use of undeclared type or module `Url`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `env`
[INFO] [stderr]    --> src/spotify.rs:125:22
[INFO] [stderr]     |
[INFO] [stderr] 125 |                     &env::var("REDIRECT_URI")
[INFO] [stderr]     |                      ^^^ use of undeclared type or module `env`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Url` in this scope
[INFO] [stderr]    --> src/spotify.rs:103:27
[INFO] [stderr]     |
[INFO] [stderr] 103 |         pub redirect_uri: Url,
[INFO] [stderr]     |                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use reqwest::Url;
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use url::Url;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0423]: expected function, found crate `dotenv`
[INFO] [stderr]    --> src/spotify.rs:116:13
[INFO] [stderr]     |
[INFO] [stderr] 116 |             dotenv().ok();
[INFO] [stderr]     |             ^^^^^^ not a function
[INFO] [stderr]     |
[INFO] [stderr] help: possible better candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 43  |     use dotenv::dotenv;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/lyrics.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | use super::*;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/neovim.rs:37:18
[INFO] [stderr]    |
[INFO] [stderr] 37 |     spotify: Box<SpotifyAPI>,
[INFO] [stderr]    |                  ^^^^^^^^^^ help: use `dyn`: `dyn SpotifyAPI`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize`, `Deserializer`, `Serialize`
[INFO] [stderr]   --> src/spotify.rs:10:13
[INFO] [stderr]    |
[INFO] [stderr] 10 | use serde::{Deserialize, Deserializer, Serialize};
[INFO] [stderr]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::Value`
[INFO] [stderr]   --> src/spotify.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use serde_json::Value;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Display`, `EnumString`
[INFO] [stderr]   --> src/spotify.rs:12:20
[INFO] [stderr]    |
[INFO] [stderr] 12 | use strum_macros::{Display, EnumString};
[INFO] [stderr]    |                    ^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `dotenv::dotenv`
[INFO] [stderr]   --> src/spotify.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use dotenv::dotenv;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `url::Url`
[INFO] [stderr]   --> src/spotify.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use url::Url;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `reqwest::Client`
[INFO] [stderr]   --> src/spotify.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use reqwest::Client;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Rng`, `self`
[INFO] [stderr]   --> src/spotify.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | use rand::{self, Rng};
[INFO] [stderr]    |            ^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/spotify.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]   --> src/spotify.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use std::env;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]   --> src/spotify.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use std::io::Read;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]   --> src/spotify.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use std::str::FromStr;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::string::ToString`
[INFO] [stderr]   --> src/spotify.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | use std::string::ToString;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `new` found for struct `spotify::Spotify` in the current scope
[INFO] [stderr]   --> src/neovim.rs:45:32
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let spotify = Spotify::new();
[INFO] [stderr]    |                                ^^^ function or associated item not found in `spotify::Spotify`
[INFO] [stderr]    | 
[INFO] [stderr]   ::: src/spotify.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub struct Spotify;
[INFO] [stderr]    | ------------------- function or associated item `new` not found for this
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]    = note: the following traits define an item `new`, perhaps you need to implement one of them:
[INFO] [stderr]            candidate #1: `error_chain::ChainedError`
[INFO] [stderr]            candidate #2: `spotify::rand::distributions::uniform::UniformSampler`
[INFO] [stderr]            candidate #3: `tendril::tendril::Atomicity`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `sample_iter` found for struct `spotify::rand::prelude::ThreadRng` in the current scope
[INFO] [stderr]    --> src/spotify.rs:47:5
[INFO] [stderr]     |
[INFO] [stderr] 47  |             .sample_iter(&rand::distributions::Alphanumeric)
[INFO] [stderr]     |              ^^^^^^^^^^^ method not found in `spotify::rand::prelude::ThreadRng`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rand-0.6.5/src/lib.rs:293:8
[INFO] [stderr]     |
[INFO] [stderr] 293 |     fn sample_iter<'a, T, D: Distribution<T>>(&'a mut self, distr: &'a D)
[INFO] [stderr]     |        -----------
[INFO] [stderr]     |        |
[INFO] [stderr]     |        the method is available for `std::boxed::Box<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |        the method is available for `std::sync::Arc<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |        the method is available for `std::rc::Rc<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr]     = note: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]             `use crate::spotify::rand::Rng;`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `new` found for struct `spotify::Spotify` in the current scope
[INFO] [stderr]   --> src/neovim.rs:45:32
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let spotify = Spotify::new();
[INFO] [stderr]    |                                ^^^ function or associated item not found in `spotify::Spotify`
[INFO] [stderr]    | 
[INFO] [stderr]   ::: src/spotify.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub struct Spotify;
[INFO] [stderr]    | ------------------- function or associated item `new` not found for this
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]    = note: the following traits define an item `new`, perhaps you need to implement one of them:
[INFO] [stderr]            candidate #1: `error_chain::ChainedError`
[INFO] [stderr]            candidate #2: `spotify::rand::distributions::uniform::UniformSampler`
[INFO] [stderr]            candidate #3: `tendril::tendril::Atomicity`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_string` found for enum `spotify::auth::Scope` in the current scope
[INFO] [stderr]    --> src/spotify.rs:140:36
[INFO] [stderr]     |
[INFO] [stderr] 53  |     pub enum Scope {
[INFO] [stderr]     |     --------------
[INFO] [stderr]     |     |
[INFO] [stderr]     |     method `to_string` not found for this
[INFO] [stderr]     |     doesn't satisfy `spotify::auth::Scope: std::fmt::Display`
[INFO] [stderr]     |     doesn't satisfy `spotify::auth::Scope: std::string::ToString`
[INFO] [stderr] ...
[INFO] [stderr] 140 |                 .map(|x| x.clone().to_string())
[INFO] [stderr]     |                                    ^^^^^^^^^ method not found in `spotify::auth::Scope`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `to_string` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `spotify::auth::Scope: std::fmt::Display`
[INFO] [stderr]             which is required by `spotify::auth::Scope: std::string::ToString`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `sample_iter` found for struct `spotify::rand::prelude::ThreadRng` in the current scope
[INFO] [stderr]    --> src/spotify.rs:47:5
[INFO] [stderr]     |
[INFO] [stderr] 47  |             .sample_iter(&rand::distributions::Alphanumeric)
[INFO] [stderr]     |              ^^^^^^^^^^^ method not found in `spotify::rand::prelude::ThreadRng`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rand-0.6.5/src/lib.rs:293:8
[INFO] [stderr]     |
[INFO] [stderr] 293 |     fn sample_iter<'a, T, D: Distribution<T>>(&'a mut self, distr: &'a D)
[INFO] [stderr]     |        -----------
[INFO] [stderr]     |        |
[INFO] [stderr]     |        the method is available for `std::boxed::Box<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |        the method is available for `std::sync::Arc<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |        the method is available for `std::rc::Rc<spotify::rand::prelude::ThreadRng>` here
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr]     = note: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]             `use crate::spotify::rand::Rng;`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 33 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0254, E0412, E0423, E0433, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0254`.
[INFO] [stderr] error[E0599]: no method named `to_string` found for enum `spotify::auth::Scope` in the current scope
[INFO] [stderr]    --> src/spotify.rs:140:36
[INFO] [stderr]     |
[INFO] [stderr] 53  |     pub enum Scope {
[INFO] [stderr]     |     --------------
[INFO] [stderr]     |     |
[INFO] [stderr]     |     method `to_string` not found for this
[INFO] [stderr]     |     doesn't satisfy `spotify::auth::Scope: std::fmt::Display`
[INFO] [stderr]     |     doesn't satisfy `spotify::auth::Scope: std::string::ToString`
[INFO] [stderr] ...
[INFO] [stderr] 140 |                 .map(|x| x.clone().to_string())
[INFO] [stderr]     |                                    ^^^^^^^^^ method not found in `spotify::auth::Scope`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `to_string` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `spotify::auth::Scope: std::fmt::Display`
[INFO] [stderr]             which is required by `spotify::auth::Scope: std::string::ToString`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 33 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0254, E0412, E0423, E0433, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0254`.
[INFO] [stderr] error: could not compile `spotify-neovim`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `spotify-neovim`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "3acef8bb9669b11b73de9ba9680fda5baa670ca8cf8734544cc80debdbef5606"`
[INFO] running `"docker" "rm" "-f" "3acef8bb9669b11b73de9ba9680fda5baa670ca8cf8734544cc80debdbef5606"`
[INFO] [stdout] 3acef8bb9669b11b73de9ba9680fda5baa670ca8cf8734544cc80debdbef5606
