[INFO] cloning repository https://github.com/bzf/rustify
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bzf/rustify" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbzf%2Frustify", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbzf%2Frustify'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8987ad3ed6573488d22279e503848a0168939eab
[INFO] testing bzf/rustify against 1.54.0 for beta-1.55-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbzf%2Frustify" "/workspace/builds/worker-7/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/bzf/rustify on toolchain 1.54.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/bzf/rustify
[INFO] finished tweaking git repo https://github.com/bzf/rustify
[INFO] tweaked toml for git repo https://github.com/bzf/rustify written to /workspace/builds/worker-7/source/Cargo.toml
[INFO] crate git repo https://github.com/bzf/rustify already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a34164122a7bcc32645a7386c7f66a717d6154e57c32277738f5ce8570d429cb
[INFO] running `Command { std: "docker" "start" "-a" "a34164122a7bcc32645a7386c7f66a717d6154e57c32277738f5ce8570d429cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a34164122a7bcc32645a7386c7f66a717d6154e57c32277738f5ce8570d429cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a34164122a7bcc32645a7386c7f66a717d6154e57c32277738f5ce8570d429cb", kill_on_drop: false }`
[INFO] [stdout] a34164122a7bcc32645a7386c7f66a717d6154e57c32277738f5ce8570d429cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6aa86d9481262640f2e908c7916863ad4b4d40ab7932d2431b61822760887614
[INFO] running `Command { std: "docker" "start" "-a" "6aa86d9481262640f2e908c7916863ad4b4d40ab7932d2431b61822760887614", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.8
[INFO] [stderr]    Compiling openal-rs v0.1.2
[INFO] [stderr]    Compiling rustify v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/spotify/types.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 |   fn handle_music_delivery(&mut self, &Vec<i32>) -> i32;
[INFO] [stdout]   |                                       ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Vec<i32>`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` implied by `#[warn(warnings)]`
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/spotify/types.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<MusicPlayer>>,
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OK` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:98:3
[INFO] [stdout]    |
[INFO] [stdout] 98 |   SP_ERROR_OK,
[INFO] [stdout]    |   ^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOk`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_API_VERSION` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:99:3
[INFO] [stdout]    |
[INFO] [stdout] 99 |   SP_ERROR_BAD_API_VERSION,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApiVersion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_API_INITIALIZATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:100:3
[INFO] [stdout]     |
[INFO] [stdout] 100 |   SP_ERROR_API_INITIALIZATION_FAILED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApiInitializationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_TRACK_NOT_PLAYABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   SP_ERROR_TRACK_NOT_PLAYABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorTrackNotPlayable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_APPLICATION_KEY` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:102:3
[INFO] [stdout]     |
[INFO] [stdout] 102 |   SP_ERROR_BAD_APPLICATION_KEY,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApplicationKey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USERNAME_OR_PASSWORD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   SP_ERROR_BAD_USERNAME_OR_PASSWORD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUsernameOrPassword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:104:3
[INFO] [stdout]     |
[INFO] [stdout] 104 |   SP_ERROR_USER_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_UNABLE_TO_CONTACT_SERVER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   SP_ERROR_UNABLE_TO_CONTACT_SERVER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUnableToContactServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CLIENT_TOO_OLD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:106:3
[INFO] [stdout]     |
[INFO] [stdout] 106 |   SP_ERROR_CLIENT_TOO_OLD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorClientTooOld`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_PERMANENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   SP_ERROR_OTHER_PERMANENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherPermanent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USER_AGENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout] 108 |   SP_ERROR_BAD_USER_AGENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUserAgent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_MISSING_CALLBACK` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:109:3
[INFO] [stdout]     |
[INFO] [stdout] 109 |   SP_ERROR_MISSING_CALLBACK,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorMissingCallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_INDATA` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:110:3
[INFO] [stdout]     |
[INFO] [stdout] 110 |   SP_ERROR_INVALID_INDATA,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidIndata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INDEX_OUT_OF_RANGE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 111 |   SP_ERROR_INDEX_OUT_OF_RANGE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIndexOutOfRange`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_NEEDS_PREMIUM` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:112:3
[INFO] [stdout]     |
[INFO] [stdout] 112 |   SP_ERROR_USER_NEEDS_PREMIUM,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserNeedsPremium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_TRANSIENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:113:3
[INFO] [stdout]     |
[INFO] [stdout] 113 |   SP_ERROR_OTHER_TRANSIENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherTransient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_IS_LOADING` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:114:3
[INFO] [stdout]     |
[INFO] [stdout] 114 |   SP_ERROR_IS_LOADING,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIsLoading`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_STREAM_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:115:3
[INFO] [stdout]     |
[INFO] [stdout] 115 |   SP_ERROR_NO_STREAM_AVAILABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoStreamAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_PERMISSION_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:116:3
[INFO] [stdout]     |
[INFO] [stdout] 116 |   SP_ERROR_PERMISSION_DENIED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorPermissionDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INBOX_IS_FULL` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:117:3
[INFO] [stdout]     |
[INFO] [stdout] 117 |   SP_ERROR_INBOX_IS_FULL,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInboxIsFull`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:118:3
[INFO] [stdout]     |
[INFO] [stdout] 118 |   SP_ERROR_NO_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_SUCH_USER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:119:3
[INFO] [stdout]     |
[INFO] [stdout] 119 |   SP_ERROR_NO_SUCH_USER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoSuchUser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CREDENTIALS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:120:3
[INFO] [stdout]     |
[INFO] [stdout] 120 |   SP_ERROR_NO_CREDENTIALS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCredentials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NETWORK_DISABLED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:121:3
[INFO] [stdout]     |
[INFO] [stdout] 121 |   SP_ERROR_NETWORK_DISABLED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNetworkDisabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_DEVICE_ID` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:122:3
[INFO] [stdout]     |
[INFO] [stdout] 122 |   SP_ERROR_INVALID_DEVICE_ID,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidDeviceId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CANT_OPEN_TRACE_FILE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:123:3
[INFO] [stdout]     |
[INFO] [stdout] 123 |   SP_ERROR_CANT_OPEN_TRACE_FILE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorCantOpenTraceFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_APPLICATION_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:124:3
[INFO] [stdout]     |
[INFO] [stdout] 124 |   SP_ERROR_APPLICATION_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApplicationBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_TOO_MANY_TRACKS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:125:3
[INFO] [stdout]     |
[INFO] [stdout] 125 |   SP_ERROR_OFFLINE_TOO_MANY_TRACKS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineTooManyTracks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_DISK_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:126:3
[INFO] [stdout]     |
[INFO] [stdout] 126 |   SP_ERROR_OFFLINE_DISK_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineDiskCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_EXPIRED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:127:3
[INFO] [stdout]     |
[INFO] [stdout] 127 |   SP_ERROR_OFFLINE_EXPIRED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineExpired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_NOT_ALLOWED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:128:3
[INFO] [stdout]     |
[INFO] [stdout] 128 |   SP_ERROR_OFFLINE_NOT_ALLOWED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineNotAllowed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_LOST` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:129:3
[INFO] [stdout]     |
[INFO] [stdout] 129 |   SP_ERROR_OFFLINE_LICENSE_LOST,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseLost`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:130:3
[INFO] [stdout]     |
[INFO] [stdout] 130 |   SP_ERROR_OFFLINE_LICENSE_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_LASTFM_AUTH_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:131:3
[INFO] [stdout]     |
[INFO] [stdout] 131 |   SP_ERROR_LASTFM_AUTH_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorLastfmAuthError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_ARGUMENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:132:3
[INFO] [stdout]     |
[INFO] [stdout] 132 |   SP_ERROR_INVALID_ARGUMENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidArgument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_SYSTEM_FAILURE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:133:3
[INFO] [stdout]     |
[INFO] [stdout] 133 |   SP_ERROR_SYSTEM_FAILURE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorSystemFailure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:32
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = ONCE_INIT;
[INFO] [stdout]    |                         ^^^^^^^^^ help: replace the use of the deprecated constant: `Once::new()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `SpSearchCompleteCallback`
[INFO] [stdout]   --> src/spotify/types.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/lib.rs:68:64
[INFO] [stdout]    |
[INFO] [stdout] 68 |     config.user_agent = ffi::CString::new(user_agent).unwrap().as_ptr();
[INFO] [stdout]    |                         -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.26s
[INFO] running `Command { std: "docker" "inspect" "6aa86d9481262640f2e908c7916863ad4b4d40ab7932d2431b61822760887614", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6aa86d9481262640f2e908c7916863ad4b4d40ab7932d2431b61822760887614", kill_on_drop: false }`
[INFO] [stdout] 6aa86d9481262640f2e908c7916863ad4b4d40ab7932d2431b61822760887614
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 53648d22f3f4f48ea6219bc239453d02ea0022f2bc7a3839894b705b8a162ab6
[INFO] running `Command { std: "docker" "start" "-a" "53648d22f3f4f48ea6219bc239453d02ea0022f2bc7a3839894b705b8a162ab6", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/spotify/types.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 |   fn handle_music_delivery(&mut self, &Vec<i32>) -> i32;
[INFO] [stdout]   |                                       ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Vec<i32>`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` implied by `#[warn(warnings)]`
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/spotify/types.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<MusicPlayer>>,
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OK` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:98:3
[INFO] [stdout]    |
[INFO] [stdout] 98 |   SP_ERROR_OK,
[INFO] [stdout]    |   ^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOk`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_API_VERSION` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:99:3
[INFO] [stdout]    |
[INFO] [stdout] 99 |   SP_ERROR_BAD_API_VERSION,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApiVersion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_API_INITIALIZATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:100:3
[INFO] [stdout]     |
[INFO] [stdout] 100 |   SP_ERROR_API_INITIALIZATION_FAILED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApiInitializationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_TRACK_NOT_PLAYABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   SP_ERROR_TRACK_NOT_PLAYABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorTrackNotPlayable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_APPLICATION_KEY` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:102:3
[INFO] [stdout]     |
[INFO] [stdout] 102 |   SP_ERROR_BAD_APPLICATION_KEY,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApplicationKey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USERNAME_OR_PASSWORD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   SP_ERROR_BAD_USERNAME_OR_PASSWORD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUsernameOrPassword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:104:3
[INFO] [stdout]     |
[INFO] [stdout] 104 |   SP_ERROR_USER_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_UNABLE_TO_CONTACT_SERVER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   SP_ERROR_UNABLE_TO_CONTACT_SERVER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUnableToContactServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CLIENT_TOO_OLD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:106:3
[INFO] [stdout]     |
[INFO] [stdout] 106 |   SP_ERROR_CLIENT_TOO_OLD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorClientTooOld`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rustify v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_PERMANENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   SP_ERROR_OTHER_PERMANENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherPermanent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USER_AGENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout] 108 |   SP_ERROR_BAD_USER_AGENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUserAgent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_MISSING_CALLBACK` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:109:3
[INFO] [stdout]     |
[INFO] [stdout] 109 |   SP_ERROR_MISSING_CALLBACK,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorMissingCallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_INDATA` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:110:3
[INFO] [stdout]     |
[INFO] [stdout] 110 |   SP_ERROR_INVALID_INDATA,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidIndata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INDEX_OUT_OF_RANGE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 111 |   SP_ERROR_INDEX_OUT_OF_RANGE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIndexOutOfRange`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_NEEDS_PREMIUM` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:112:3
[INFO] [stdout]     |
[INFO] [stdout] 112 |   SP_ERROR_USER_NEEDS_PREMIUM,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserNeedsPremium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_TRANSIENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:113:3
[INFO] [stdout]     |
[INFO] [stdout] 113 |   SP_ERROR_OTHER_TRANSIENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherTransient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_IS_LOADING` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:114:3
[INFO] [stdout]     |
[INFO] [stdout] 114 |   SP_ERROR_IS_LOADING,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIsLoading`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_STREAM_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:115:3
[INFO] [stdout]     |
[INFO] [stdout] 115 |   SP_ERROR_NO_STREAM_AVAILABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoStreamAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_PERMISSION_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:116:3
[INFO] [stdout]     |
[INFO] [stdout] 116 |   SP_ERROR_PERMISSION_DENIED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorPermissionDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INBOX_IS_FULL` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:117:3
[INFO] [stdout]     |
[INFO] [stdout] 117 |   SP_ERROR_INBOX_IS_FULL,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInboxIsFull`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:118:3
[INFO] [stdout]     |
[INFO] [stdout] 118 |   SP_ERROR_NO_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_SUCH_USER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:119:3
[INFO] [stdout]     |
[INFO] [stdout] 119 |   SP_ERROR_NO_SUCH_USER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoSuchUser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CREDENTIALS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:120:3
[INFO] [stdout]     |
[INFO] [stdout] 120 |   SP_ERROR_NO_CREDENTIALS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCredentials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NETWORK_DISABLED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:121:3
[INFO] [stdout]     |
[INFO] [stdout] 121 |   SP_ERROR_NETWORK_DISABLED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNetworkDisabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_DEVICE_ID` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:122:3
[INFO] [stdout]     |
[INFO] [stdout] 122 |   SP_ERROR_INVALID_DEVICE_ID,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidDeviceId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CANT_OPEN_TRACE_FILE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:123:3
[INFO] [stdout]     |
[INFO] [stdout] 123 |   SP_ERROR_CANT_OPEN_TRACE_FILE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorCantOpenTraceFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_APPLICATION_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:124:3
[INFO] [stdout]     |
[INFO] [stdout] 124 |   SP_ERROR_APPLICATION_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApplicationBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_TOO_MANY_TRACKS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:125:3
[INFO] [stdout]     |
[INFO] [stdout] 125 |   SP_ERROR_OFFLINE_TOO_MANY_TRACKS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineTooManyTracks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_DISK_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:126:3
[INFO] [stdout]     |
[INFO] [stdout] 126 |   SP_ERROR_OFFLINE_DISK_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineDiskCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_EXPIRED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:127:3
[INFO] [stdout]     |
[INFO] [stdout] 127 |   SP_ERROR_OFFLINE_EXPIRED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineExpired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_NOT_ALLOWED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:128:3
[INFO] [stdout]     |
[INFO] [stdout] 128 |   SP_ERROR_OFFLINE_NOT_ALLOWED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineNotAllowed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_LOST` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:129:3
[INFO] [stdout]     |
[INFO] [stdout] 129 |   SP_ERROR_OFFLINE_LICENSE_LOST,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseLost`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:130:3
[INFO] [stdout]     |
[INFO] [stdout] 130 |   SP_ERROR_OFFLINE_LICENSE_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_LASTFM_AUTH_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:131:3
[INFO] [stdout]     |
[INFO] [stdout] 131 |   SP_ERROR_LASTFM_AUTH_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorLastfmAuthError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_ARGUMENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:132:3
[INFO] [stdout]     |
[INFO] [stdout] 132 |   SP_ERROR_INVALID_ARGUMENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidArgument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_SYSTEM_FAILURE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:133:3
[INFO] [stdout]     |
[INFO] [stdout] 133 |   SP_ERROR_SYSTEM_FAILURE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorSystemFailure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:32
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = ONCE_INIT;
[INFO] [stdout]    |                         ^^^^^^^^^ help: replace the use of the deprecated constant: `Once::new()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `SpSearchCompleteCallback`
[INFO] [stdout]   --> src/spotify/types.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/lib.rs:68:64
[INFO] [stdout]    |
[INFO] [stdout] 68 |     config.user_agent = ffi::CString::new(user_agent).unwrap().as_ptr();
[INFO] [stdout]    |                         -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `application_key`
[INFO] [stdout]  --> examples/tekno.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | mod application_key;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `application_key`, create file "examples/application_key.rs" or "examples/application_key/mod.rs"
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `application_key`
[INFO] [stdout]  --> examples/search.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod application_key;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `application_key`, create file "examples/application_key.rs" or "examples/application_key/mod.rs"
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `get` in module `application_key`
[INFO] [stdout]   --> examples/tekno.rs:23:22
[INFO] [stdout]    |
[INFO] [stdout] 23 |     application_key::get(),
[INFO] [stdout]    |                      ^^^ not found in `application_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `get` in module `application_key`
[INFO] [stdout]   --> examples/search.rs:19:22
[INFO] [stdout]    |
[INFO] [stdout] 19 |     application_key::get(),
[INFO] [stdout]    |                      ^^^ not found in `application_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustify`
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/spotify/types.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 |   fn handle_music_delivery(&mut self, &Vec<i32>) -> i32;
[INFO] [stdout]   |                                       ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Vec<i32>`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` implied by `#[warn(warnings)]`
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/spotify/types.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<MusicPlayer>>,
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OK` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:98:3
[INFO] [stdout]    |
[INFO] [stdout] 98 |   SP_ERROR_OK,
[INFO] [stdout]    |   ^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOk`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_API_VERSION` should have an upper camel case name
[INFO] [stdout]   --> src/spotify/types.rs:99:3
[INFO] [stdout]    |
[INFO] [stdout] 99 |   SP_ERROR_BAD_API_VERSION,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApiVersion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_API_INITIALIZATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:100:3
[INFO] [stdout]     |
[INFO] [stdout] 100 |   SP_ERROR_API_INITIALIZATION_FAILED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApiInitializationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_TRACK_NOT_PLAYABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   SP_ERROR_TRACK_NOT_PLAYABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorTrackNotPlayable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_APPLICATION_KEY` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:102:3
[INFO] [stdout]     |
[INFO] [stdout] 102 |   SP_ERROR_BAD_APPLICATION_KEY,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadApplicationKey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USERNAME_OR_PASSWORD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   SP_ERROR_BAD_USERNAME_OR_PASSWORD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUsernameOrPassword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:104:3
[INFO] [stdout]     |
[INFO] [stdout] 104 |   SP_ERROR_USER_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_UNABLE_TO_CONTACT_SERVER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   SP_ERROR_UNABLE_TO_CONTACT_SERVER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUnableToContactServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CLIENT_TOO_OLD` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:106:3
[INFO] [stdout]     |
[INFO] [stdout] 106 |   SP_ERROR_CLIENT_TOO_OLD,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorClientTooOld`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_PERMANENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   SP_ERROR_OTHER_PERMANENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherPermanent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_BAD_USER_AGENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout] 108 |   SP_ERROR_BAD_USER_AGENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorBadUserAgent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_MISSING_CALLBACK` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:109:3
[INFO] [stdout]     |
[INFO] [stdout] 109 |   SP_ERROR_MISSING_CALLBACK,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorMissingCallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_INDATA` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:110:3
[INFO] [stdout]     |
[INFO] [stdout] 110 |   SP_ERROR_INVALID_INDATA,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidIndata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INDEX_OUT_OF_RANGE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 111 |   SP_ERROR_INDEX_OUT_OF_RANGE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIndexOutOfRange`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_USER_NEEDS_PREMIUM` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:112:3
[INFO] [stdout]     |
[INFO] [stdout] 112 |   SP_ERROR_USER_NEEDS_PREMIUM,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorUserNeedsPremium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OTHER_TRANSIENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:113:3
[INFO] [stdout]     |
[INFO] [stdout] 113 |   SP_ERROR_OTHER_TRANSIENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOtherTransient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_IS_LOADING` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:114:3
[INFO] [stdout]     |
[INFO] [stdout] 114 |   SP_ERROR_IS_LOADING,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorIsLoading`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_STREAM_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:115:3
[INFO] [stdout]     |
[INFO] [stdout] 115 |   SP_ERROR_NO_STREAM_AVAILABLE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoStreamAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_PERMISSION_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:116:3
[INFO] [stdout]     |
[INFO] [stdout] 116 |   SP_ERROR_PERMISSION_DENIED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorPermissionDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INBOX_IS_FULL` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:117:3
[INFO] [stdout]     |
[INFO] [stdout] 117 |   SP_ERROR_INBOX_IS_FULL,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInboxIsFull`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:118:3
[INFO] [stdout]     |
[INFO] [stdout] 118 |   SP_ERROR_NO_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_SUCH_USER` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:119:3
[INFO] [stdout]     |
[INFO] [stdout] 119 |   SP_ERROR_NO_SUCH_USER,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoSuchUser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NO_CREDENTIALS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:120:3
[INFO] [stdout]     |
[INFO] [stdout] 120 |   SP_ERROR_NO_CREDENTIALS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNoCredentials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_NETWORK_DISABLED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:121:3
[INFO] [stdout]     |
[INFO] [stdout] 121 |   SP_ERROR_NETWORK_DISABLED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorNetworkDisabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_DEVICE_ID` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:122:3
[INFO] [stdout]     |
[INFO] [stdout] 122 |   SP_ERROR_INVALID_DEVICE_ID,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidDeviceId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_CANT_OPEN_TRACE_FILE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:123:3
[INFO] [stdout]     |
[INFO] [stdout] 123 |   SP_ERROR_CANT_OPEN_TRACE_FILE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorCantOpenTraceFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_APPLICATION_BANNED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:124:3
[INFO] [stdout]     |
[INFO] [stdout] 124 |   SP_ERROR_APPLICATION_BANNED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorApplicationBanned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_TOO_MANY_TRACKS` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:125:3
[INFO] [stdout]     |
[INFO] [stdout] 125 |   SP_ERROR_OFFLINE_TOO_MANY_TRACKS,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineTooManyTracks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_DISK_CACHE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:126:3
[INFO] [stdout]     |
[INFO] [stdout] 126 |   SP_ERROR_OFFLINE_DISK_CACHE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineDiskCache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_EXPIRED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:127:3
[INFO] [stdout]     |
[INFO] [stdout] 127 |   SP_ERROR_OFFLINE_EXPIRED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineExpired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_NOT_ALLOWED` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:128:3
[INFO] [stdout]     |
[INFO] [stdout] 128 |   SP_ERROR_OFFLINE_NOT_ALLOWED,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineNotAllowed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_LOST` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:129:3
[INFO] [stdout]     |
[INFO] [stdout] 129 |   SP_ERROR_OFFLINE_LICENSE_LOST,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseLost`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_OFFLINE_LICENSE_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:130:3
[INFO] [stdout]     |
[INFO] [stdout] 130 |   SP_ERROR_OFFLINE_LICENSE_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorOfflineLicenseError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_LASTFM_AUTH_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:131:3
[INFO] [stdout]     |
[INFO] [stdout] 131 |   SP_ERROR_LASTFM_AUTH_ERROR,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorLastfmAuthError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_INVALID_ARGUMENT` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:132:3
[INFO] [stdout]     |
[INFO] [stdout] 132 |   SP_ERROR_INVALID_ARGUMENT,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorInvalidArgument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SP_ERROR_SYSTEM_FAILURE` should have an upper camel case name
[INFO] [stdout]    --> src/spotify/types.rs:133:3
[INFO] [stdout]     |
[INFO] [stdout] 133 |   SP_ERROR_SYSTEM_FAILURE,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SpErrorSystemFailure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:32
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                ^^^^^^^^^^^ help: use `dyn`: `dyn MusicPlayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/player/openal_player.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = ONCE_INIT;
[INFO] [stdout]    |                         ^^^^^^^^^ help: replace the use of the deprecated constant: `Once::new()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `SpSearchCompleteCallback`
[INFO] [stdout]   --> src/spotify/types.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/lib.rs:68:64
[INFO] [stdout]    |
[INFO] [stdout] 68 |     config.user_agent = ffi::CString::new(user_agent).unwrap().as_ptr();
[INFO] [stdout]    |                         -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: "cc" "-m64" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.rustify.8q5jouv5-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5.5g9y7p3n42uip0en.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-lspotify" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-3599c5491d44663f.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libterm-1d56ea45a67842c8.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-9749f7c936ebf9a7.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-627a220173eefff1.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-16ed15e5bfe21b9b.rlib" "/opt/rustwide/target/debug/deps/libopenal-a4994e5210c4867f.rlib" "/opt/rustwide/target/debug/deps/liblibc-1eff2e55a372d6be.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-2420485b9e5ef5e1.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-785e3cb61c4b1960.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-087191a88bdaa22d.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-9981842c02975178.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-6fb405869b015fde.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-d05c5c3c56004b7b.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-42d74d2097528b38.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-fb36534c113d2209.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-b56b9042c12b6535.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-491902d6cb3e76df.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-61834e0981b8c367.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-f78aa99d613a55bc.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-53ee54cd7fed2c57.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-544ecdbd6cda3c58.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-379cc252b6943a79.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-8063eea38dcc5e62.rlib" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-5b228734afae15ee.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-d6c7a399d95d173f.rlib" "-Wl,-Bdynamic" "-lopenal" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/1.54.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/rustify-00e0a4999e1862a5" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs"
[INFO] [stdout]   = note: /usr/bin/ld: cannot find -lspotify
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "53648d22f3f4f48ea6219bc239453d02ea0022f2bc7a3839894b705b8a162ab6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53648d22f3f4f48ea6219bc239453d02ea0022f2bc7a3839894b705b8a162ab6", kill_on_drop: false }`
[INFO] [stdout] 53648d22f3f4f48ea6219bc239453d02ea0022f2bc7a3839894b705b8a162ab6
