[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.69.0 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbzf%2Frustify" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/bzf/rustify on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.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-6-tc1/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: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded openal-rs v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 674686e8c5dbf12a05bfded96396e9143495e72519a44a69ca03f4a7055cd4a8
[INFO] running `Command { std: "docker" "start" "-a" "674686e8c5dbf12a05bfded96396e9143495e72519a44a69ca03f4a7055cd4a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "674686e8c5dbf12a05bfded96396e9143495e72519a44a69ca03f4a7055cd4a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "674686e8c5dbf12a05bfded96396e9143495e72519a44a69ca03f4a7055cd4a8", kill_on_drop: false }`
[INFO] [stdout] 674686e8c5dbf12a05bfded96396e9143495e72519a44a69ca03f4a7055cd4a8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a46a17b63bcc0d22d552ad79f464951241154e84df4d6d4b593dd4a160f00b85
[INFO] running `Command { std: "docker" "start" "-a" "a46a17b63bcc0d22d552ad79f464951241154e84df4d6d4b593dd4a160f00b85", 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]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[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] 
[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: `#[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: 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: `#[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]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = Once::new();
[INFO] [stdout]    |                         ~~~~~~~~~~~
[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]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<dyn MusicPlayer>>,
[INFO] [stdout]    |                         +++
[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]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<dyn MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SpSearchCompleteCallback` is never used
[INFO] [stdout]   --> src/spotify/types.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^
[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: 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]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.60s
[INFO] running `Command { std: "docker" "inspect" "a46a17b63bcc0d22d552ad79f464951241154e84df4d6d4b593dd4a160f00b85", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a46a17b63bcc0d22d552ad79f464951241154e84df4d6d4b593dd4a160f00b85", kill_on_drop: false }`
[INFO] [stdout] a46a17b63bcc0d22d552ad79f464951241154e84df4d6d4b593dd4a160f00b85
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fe62cdabde41504ca6824fa11096ed5ee0f5c1068bcf3f96bb0f8a9f11baa1d9
[INFO] running `Command { std: "docker" "start" "-a" "fe62cdabde41504ca6824fa11096ed5ee0f5c1068bcf3f96bb0f8a9f11baa1d9", kill_on_drop: false }`
[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]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[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] 
[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: `#[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: 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: `#[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]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = Once::new();
[INFO] [stdout]    |                         ~~~~~~~~~~~
[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]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<dyn MusicPlayer>>,
[INFO] [stdout]    |                         +++
[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]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<dyn MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SpSearchCompleteCallback` is never used
[INFO] [stdout]   --> src/spotify/types.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rustify v0.1.0 (/opt/rustwide/workdir)
[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: 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]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[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] 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]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[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] 
[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: `#[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] 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] 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] 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] 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] error: aborting due to 2 previous errors
[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] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[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: `#[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]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 |     static INIT: Once = Once::new();
[INFO] [stdout]    |                         ~~~~~~~~~~~
[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]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub player: Arc<Mutex<dyn MusicPlayer>>,
[INFO] [stdout]    |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustify` due to 3 previous errors
[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]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |              player: Arc<Mutex<dyn MusicPlayer>>) -> (Session, Receiver<Event>) {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rustify` due to 3 previous errors
[INFO] [stdout] warning: type alias `SpSearchCompleteCallback` is never used
[INFO] [stdout]   --> src/spotify/types.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type SpSearchCompleteCallback = extern fn(*const SpSearch, *const libc::c_void);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^
[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: 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]    = note: `#[warn(temporary_cstring_as_ptr)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: LC_ALL="C" PATH="/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcXtlx8R/symbols.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.rustify.14df461d-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969.1blkzrp4is2l33il.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-lspotify" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-7791a6353d4a7929.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-7b17724e9ce90a72.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-596f8ce9d30a755e.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-da04f86254de594f.rlib" "/opt/rustwide/target/debug/deps/libopenal-b29cb06dd1bd51cb.rlib" "/opt/rustwide/target/debug/deps/liblibc-54ef5334c4ce220c.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-89bc084783fdc439.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-8bee4b287d4367c1.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-d61707aed80694c0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-d85366256f22345b.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-96069b86b8a8cae9.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-d19d53abf68dfa6c.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-787cbccd19d64ac6.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-b3837a36b830e0d0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-e3deb0e7e3f04966.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-dabbb79c9815def4.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-305b01f34c9409f2.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-f833521df6074e73.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-9ac333113350d171.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-1c126114322d0eee.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bad9164fdeeecf92.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f9374b1e480fa681.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-207f06e41d9603af.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-7e2768e66e984e85.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-957b4aff41f8cd46.rlib" "-Wl,-Bdynamic" "-lopenal" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/rustify-db6c105348c42969" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: /usr/bin/ld: cannot find -lspotify: No such file or directory
[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: could not compile `rustify` due to 2 previous errors; 43 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "fe62cdabde41504ca6824fa11096ed5ee0f5c1068bcf3f96bb0f8a9f11baa1d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe62cdabde41504ca6824fa11096ed5ee0f5c1068bcf3f96bb0f8a9f11baa1d9", kill_on_drop: false }`
[INFO] [stdout] fe62cdabde41504ca6824fa11096ed5ee0f5c1068bcf3f96bb0f8a9f11baa1d9
