diff --git a/CHANGELOG.md b/CHANGELOG.md index 010cc74..af8ed08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased ### Changed + - moved os.remove(session_cache_path()) inside try block to avoid TypeError on app.py example file +- A warning will no longer be emitted when the cache file does not exist at the specified path +- The docs for the `auth` parameter of `Spotify.init` use the term "access token" instead of "authorization token" ## [2.16.1] - 2020-10-24 diff --git a/spotipy/client.py b/spotipy/client.py index fbb719a..6b0d97f 100644 --- a/spotipy/client.py +++ b/spotipy/client.py @@ -114,7 +114,7 @@ class Spotify(object): """ Creates a Spotify API client. - :param auth: An authorization token (optional) + :param auth: An access token (optional) :param requests_session: A Requests session object or a truthy value to create one. A falsy value disables sessions. diff --git a/spotipy/oauth2.py b/spotipy/oauth2.py index 802e58b..c2eb8d6 100644 --- a/spotipy/oauth2.py +++ b/spotipy/oauth2.py @@ -11,6 +11,7 @@ __all__ = [ ] import base64 +import errno import json import logging import os @@ -305,9 +306,11 @@ class SpotifyOAuth(SpotifyAuthBase): token_info = self.refresh_access_token( token_info["refresh_token"] ) - - except IOError: - logger.warning("Couldn't read cache at: %s", self.cache_path) + except IOError as error: + if error.errno == errno.ENOENT: + logger.debug("cache does not exist at: %s", self.cache_path) + else: + logger.warning("Couldn't read cache at: %s", self.cache_path) return token_info @@ -784,9 +787,11 @@ class SpotifyPKCE(SpotifyAuthBase): token_info = self.refresh_access_token( token_info["refresh_token"] ) - - except IOError: - logger.warning("Couldn't read cache at: %s", self.cache_path) + except IOError as error: + if error.errno == errno.ENOENT: + logger.debug("cache does not exist at: %s", self.cache_path) + else: + logger.warning("Couldn't read cache at: %s", self.cache_path) return token_info @@ -1029,9 +1034,11 @@ class SpotifyImplicitGrant(SpotifyAuthBase): if self.is_token_expired(token_info): return None - - except IOError: - logger.warning("Couldn't read cache at: %s", self.cache_path) + except IOError as error: + if error.errno == errno.ENOENT: + logger.debug("cache does not exist at: %s", self.cache_path) + else: + logger.warning("Couldn't read cache at: %s", self.cache_path) return token_info