diff --git a/Cargo.toml b/Cargo.toml index 20c965f..5ff0372 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,13 +8,12 @@ edition = "2018" [dependencies] teloxide = { version = "0.9.2", features = ["auto-send", "macros"] } log = "0.4.17" -pretty_env_logger = "0.4.0" +pretty_env_logger = "0.5.0" tokio = { version = "1.20.0", features = ["rt-multi-thread", "macros"] } rspotify = { version = "0.11.5", features = ["default"]} -sentry = "0.27.0" +sentry = "0.32.1" invidious = "0.2.1" -chrono = "0.4.19" -itertools = "0.10.3" +itertools = "0.12.0" async-trait = "0.1.56" [dev-dependencies] diff --git a/src/search/spotify/mod.rs b/src/search/spotify/mod.rs index 36e86a3..0104245 100644 --- a/src/search/spotify/mod.rs +++ b/src/search/spotify/mod.rs @@ -73,7 +73,7 @@ impl Client { pub(crate) async fn new() -> Self { let spotify_creds = Credentials::from_env() .expect("RSPOTIFY_CLIENT_ID and RSPOTIFY_CLIENT_SECRET not found."); - let mut spotify = ClientCredsSpotify::new(spotify_creds); + let spotify = ClientCredsSpotify::new(spotify_creds); spotify.request_token().await.unwrap(); Client { client: Arc::new(spotify), @@ -99,11 +99,11 @@ impl SearchableClient for Client { Err(_e) => return None, }; - match self.client.track(&track_id).await { + match self.client.track(track_id).await { Ok(track) => Some(TrackInfo { name: track.name, artists: track.artists.iter().map(|x| x.name.clone()).collect(), - duration: track.duration, + duration: Duration::from_secs(track.duration.num_seconds() as u64), }), Err(_e) => return None, } @@ -115,7 +115,7 @@ impl SearchableClient for Client { Err(_e) => return None, }; - match self.client.album(&album_id).await { + match self.client.album(album_id).await { Ok(album) => Some(AlbumInfo { name: album.name, artists: album.artists.iter().map(|x| x.name.clone()).collect(), @@ -127,7 +127,7 @@ impl SearchableClient for Client { .map(|t| TrackInfo { name: t.name.clone(), artists: t.artists.iter().map(|x| x.name.clone()).collect(), - duration: t.duration, + duration: Duration::from_secs(t.duration.num_seconds() as u64), }) .collect(), }), @@ -141,7 +141,7 @@ impl SearchableClient for Client { Err(_e) => return None, }; - match self.client.playlist(&playlist_id, None, None).await { + match self.client.playlist(playlist_id, None, None).await { Ok(playlist) => Some(PlaylistInfo { name: playlist.name, artists: playlist @@ -168,12 +168,12 @@ impl SearchableClient for Client { Track(t) => Some(PlayableKind::Track(TrackInfo { name: t.name.clone(), artists: t.artists.iter().map(|a| a.name.clone()).collect(), - duration: t.duration, + duration: Duration::from_secs(t.duration.num_seconds() as u64), })), Episode(e) => Some(PlayableKind::Podcast(EpisodeInfo { name: e.name.clone(), show: e.show.name.clone(), - duration: e.duration, + duration: Duration::from_secs(e.duration.num_seconds() as u64), description: e.description.clone(), languages: e.languages.clone(), release_date: e.release_date.clone(),