Commit Graph

132 Commits

Author SHA1 Message Date
John Cheng
f647ca75c2 update changelog 2023-05-26 19:51:59 -04:00
adhil0
d31969108d
Update links in documentation (#969)
* updating links to Spotify documentation

* add changes to CHANGELOG.md
2023-05-02 22:26:40 +01:00
darwady2
3b6d14404e
Updates the video link to a high definition video (#967)
* Updates the video link to a high definition video for setting the SPOTIPY_CLIENT_ID and SPOTIPY_CLIENT_SECRET values and authenticating. The old video was getting some complaints about people not being able to read the text (since it was low quality), so I've re-recorded it and replaced it with this new version.

* Adds changes to Chanelog

---------

Co-authored-by: Stéphane Bruckert <stephane.bruckert@gmail.com>
2023-04-24 13:21:19 +01:00
Stéphane Bruckert
796c03338f
Bump to 2.23.0 (#959) 2023-04-07 18:36:17 +01:00
Stéphane Bruckert
3bac7250ec
Publish to PyPI action (#958) 2023-04-07 12:33:32 +01:00
Beza Amare Amsalu
b7baaabf74
fixed contributing.md (#955) 2023-03-30 18:12:41 +01:00
Richard Ngo-Lam
fe438c0432
Update search_markets method to apply the total parameter to all types, add tests (#901)
* Update search_markets method to apply the total parameter to all types, fixes #534

* Add integration tests for searching multiple types in multiple markets

* Update search_markets method to apply the total parameter to all types, add tests

---------

Co-authored-by: Stéphane Bruckert <stephane.bruckert@gmail.com>
2023-03-15 23:46:08 +00:00
Ludwig Johansson
f2d23e2219
Fix regex to support detailed URI #947 (#949)
* Fix regex to support detailed URI as #947

* Added changes to changelog
2023-03-15 15:17:02 +00:00
Shawn Cruz
b3f308d289
Add encoder_cls argument to CacheFileHandler (#941)
Fixes
2023-02-12 22:58:55 +00:00
Stephane Bruckert
c53511bbbe Bump to 2.22.1 2023-01-23 19:00:55 +00:00
Shaderbug
b1db0b63d9
Merge pull request from GHSA-q764-g6fm-555v
* Improve URL and URI handling

* Back to SpotifyException for backward-compatibility

* fix copy paste typo

* TODO v3 comments

Co-authored-by: Stephane Bruckert <stephane.bruckert@gmail.com>
2023-01-23 18:50:07 +00:00
oliveraw
922d51df02
modified docstring for playlist_add_items to no longer accept IDs 2022-12-16 19:17:37 +00:00
Mason Stephenson
edd3f29a2c
Getting Started Clarifications and Example Code File (#904)
* added URI link to README getting started

* revised comment

* added alternate module installation instruction

* installation troubleshooting comment

* scope clarification comment

* added playlist_add_items.py to examples folder

* reformatted changelog edits

* Relocated added contributions to added section in Changelog

* removed unnecessary library installation instruction

* Clarified alternative installation instruction
2022-12-10 16:27:29 +00:00
Stephane Bruckert
1377879972 Update contributing.md 2022-12-10 16:02:03 +00:00
Stephane Bruckert
1e840b6526 Bump to 2.22.0 2022-12-10 15:31:47 +00:00
mattgader
d2384c1c33
Add CODE_OF_CONDUCT.md (#897) 2022-12-10 14:22:45 +00:00
Kevin Sekuj
5201f58247
Add tests for global categories, releases, fix bugged tests (#893) 2022-11-26 09:29:53 +00:00
Stéphane Bruckert
edcd322845
Pin Github Actions Runner to Ubuntu 20 for Py27 (#894) 2022-11-26 08:40:49 +00:00
Sean Park
6f56504c2c
Update category tests to fix 1 failing and 1 error test results (#886)
* update category tests to fix 1 failing and 1 error test results

* update changelog
2022-11-13 10:42:25 +00:00
Stéphane Bruckert
1265d7b915
GHA integration tests (#876) 2022-11-01 21:57:40 +00:00
Stephane Bruckert
0c32cd74d9 Integration tests workflow 2022-11-01 21:26:01 +00:00
Stéphane Bruckert
9bf5e342c2
Add secrets to GHA workflow (#877) 2022-11-01 20:52:25 +00:00
Stephane Bruckert
5a7e5c5a43 Bump to 2.21.0, closes #836 2022-10-26 23:03:42 +01:00
Bruno Alla
fd8f97d46a
Add python 3.10 to GitHub Actions (#863) 2022-10-26 22:59:10 +01:00
Bryan Malyn
7fc08809f0
Add FlaskSessionCacheHandler (#833)
Updated examples/app.py
Updated CHANGELOG.md and appropriate docs.
2022-06-25 20:00:08 +01:00
Stephane Bruckert
7337bf9352 Fix readthedocs 2022-06-19 09:03:13 +01:00
Ian Rolph
eab3c37b89
Updated documentation (#826)
* updated documentation

* updated changelog
2022-06-18 23:34:36 +01:00
dnlruiz
a4cfd83946
show_featured_artists.py and update publishing docs (#821)
* show_featured_artists.py and update publishing docs

* Don't update version

Co-authored-by: Stéphane Bruckert <contact@stephanebruckert.com>
2022-06-18 23:26:43 +01:00
ivyadam
5175f19851
Updated documentation about ISO-639 language codes and address issue #753 (#800)
* Updated references to ISO 639 standard to clarify that the ISO 639-1 alpha-2 standard is used.

* Added `market` parameter to `album` and `albums`

* fix formatting change
2022-06-18 23:18:59 +01:00
Mohammad Momeni
72a6cd9190
Fix text attribute for Response object (#811)
* Fix text attribute for Response object

* Add a changelog for the AttributeError PR
2022-06-18 23:17:58 +01:00
Stephane Bruckert
c1a85f1469 Bump to 2.20.0, closes #806 2022-06-18 22:59:37 +01:00
Stéphane Bruckert
98f0f76238
Removed Python 3.5 and added Python 3.9 in Github Action (#831)
* Removed python3.5 from CI

* Add python 3.9
2022-06-18 22:56:42 +01:00
ENT8R
9a627e88f4
Simplify check for existing token (#765)
* Simplify check for existing token in RedisCacheHandler

* Update CHANGELOG.md
2022-01-03 19:33:13 +01:00
ENT8R
08411b9031
Allow to set custom key in RedisCacheHandler (#761)
* Allow to set custom key in RedisCacheHandler

* Update CHANGELOG.md

* Check for the existence of the key
2021-12-22 15:44:38 +01:00
Felix Cusson
0464f4f483
Remove query parameters from URI (#758)
* made _get_id take account of ? in URI

* corrected typo

* changes to _get_id explained
2021-12-17 22:20:47 +00:00
Takehisa Oyama
7d23fc3277
Add RedisCacheHandler (#747)
* add RedisCacheHandler

* add the explanation for customized chache handlers

* update the dependency and chengelog
2021-11-22 19:31:58 +00:00
Stephane Bruckert
48d04f343b Bump to 2.19.0 2021-08-12 11:27:26 +01:00
Stéphane Bruckert
b80bfa5c52
Generate license (#699)
* Create LICENSE

* Delete LICENSE.md

* Update setup.py

* Update CHANGELOG.md
2021-06-28 20:54:42 +01:00
Peter Schorn
06551cd055
Fallback on decoding error responses into string if decoding into JSON fails (#689)
* Fixed a bug in the initializers for the auth managers that produced a spurious warning message if you provide a cache handler and you set a value for the "SPOTIPY_CLIENT_USERNAME" environment variable.

* fixed a bug in _get_auth_response_local_server which occurs if you provide a state parameter and click cancel in the authorization dialog

* Fallback on decoding the error response body into text if decoding into JSON fails.

* Fall back on decoding oauth errors into text if decoding into JSON fails.

* Fixed unused `http_error` name in exeception clause.

* Updated CHANGELOG

Co-authored-by: Stéphane Bruckert <stephane.bruckert@gmail.com>
2021-06-19 15:59:02 +02:00
Varun Patil
d0fc4425f7
Added DjangoSessionCacheHandler (#691)
* Added DjangoSessionCacheHandler

Added `DjangoSessionCacheHandler`, a cache handler that stores the token in the session framework provided by Django. Web apps using spotipy with Django can directly use this for cache handling.

* removed whitespaces
2021-06-19 15:57:36 +02:00
Peter Schorn
c4f6a3fa4b
Fixed a bug in the initializers for the auth managers that produced a spurious warning message if you provide a cache handler and you set a value for the "SPOTIPY_CLIENT_USERNAME" environment variable. (#674) 2021-04-19 20:17:54 +01:00
Peter Schorn
07915e21e5
Added MemoryCacheHandler (#670)
* Added `MemoryCacheHandler`, a cache handler that simply stores the token info in memory as an instance attribute of this class.

* Fixed a bug in `CacheFileHandler.__init__`: The documentation says that the username will be retrieved from the environment, but it wasn't.
2021-04-14 16:59:37 +01:00
Stephane Bruckert
36bdeb0a65 Bump to 2.18.0 2021-04-13 21:32:51 +01:00
Peter Schorn
25f9df2dd5
Added new endpoints (#666)
* Added an exception clause that catches `FileNotFoundError` and logs a debug message in `SpotifyOAuth.get_cached_token`, `SpotifyPKCE.get_cached_token` and `SpotifyImplicitGrant.get_cached_token`.

* Changed docs for `auth` parameter of `Spotify.init` to `access token` instead of `authorization token`. In issue #599, a user confused the access token with the authorization code.

* Updated CHANGELOG.md

* Removed `FileNotFoundError` because it does not exist in python 2.7 (*sigh*) and replaced it with a call to `os.path.exists`.

* Replaced ` os.path.exists` with `error.errno == errno.ENOENT` to supress errors when the cache file does not exist.

* Changed docs for `search` to mention that you can provide multiple multiple types to search for. The query parameters of requests are now logged. Added log messages for when the access token and refresh tokens are retrieved and when they are refreshed. Other small grammar fixes.

* Removed duplicate word "multiple" from CHANGELOG

* * Fixed the bugs in `SpotifyOAuth.refresh_access_token` and `SpotifyPKCE.refresh_access_token` which raised the incorrect exception upon receiving an error response from the server. This addresses #645.
* Fixed a bug in `RequestHandler.do_GET` in which the non-existent `state` attribute of  `SpotifyOauthError` is accessed. This bug occurs when the user clicks "cancel" in the permissions dialog that opens in the browser.
* Cleaned up the documentation for `SpotifyClientCredentials.__init__`, `SpotifyOAuth.__init__`, and `SpotifyPKCE.__init__`.

* Removed unneeded import

* Added the following endpoints:
 `Spotify.current_user_saved_episodes` `Spotify.current_user_saved_episodes_add` `Spotify.current_user_saved_episodes_delete` `Spotify.current_user_saved_episodes_contains` `Spotify.available_markets`
 Added tests for the above endpoints.

* updated CHANGELOG

* Fixed flake8 issue

Co-authored-by: Stéphane Bruckert <stephane.bruckert@gmail.com>
2021-04-10 14:53:03 +01:00
Peter Schorn
dc89a00113
Added cache handler to SpotifyClientCredentials and fixed a bug in refresh tokens methods that raised the wrong exception (#655)
* Added an exception clause that catches `FileNotFoundError` and logs a debug message in `SpotifyOAuth.get_cached_token`, `SpotifyPKCE.get_cached_token` and `SpotifyImplicitGrant.get_cached_token`.

* Changed docs for `auth` parameter of `Spotify.init` to `access token` instead of `authorization token`. In issue #599, a user confused the access token with the authorization code.

* Updated CHANGELOG.md

* Removed `FileNotFoundError` because it does not exist in python 2.7 (*sigh*) and replaced it with a call to `os.path.exists`.

* Replaced ` os.path.exists` with `error.errno == errno.ENOENT` to supress errors when the cache file does not exist.

* Changed docs for `search` to mention that you can provide multiple multiple types to search for. The query parameters of requests are now logged. Added log messages for when the access token and refresh tokens are retrieved and when they are refreshed. Other small grammar fixes.

* Removed duplicate word "multiple" from CHANGELOG

* * Fixed the bugs in `SpotifyOAuth.refresh_access_token` and `SpotifyPKCE.refresh_access_token` which raised the incorrect exception upon receiving an error response from the server. This addresses #645.
* Fixed a bug in `RequestHandler.do_GET` in which the non-existent `state` attribute of  `SpotifyOauthError` is accessed. This bug occurs when the user clicks "cancel" in the permissions dialog that opens in the browser.
* Cleaned up the documentation for `SpotifyClientCredentials.__init__`, `SpotifyOAuth.__init__`, and `SpotifyPKCE.__init__`.

* Removed unneeded import

Co-authored-by: Stéphane Bruckert <stephane.bruckert@gmail.com>
2021-03-13 14:34:52 +01:00
Stephane Bruckert
cb5c61881e Fix changelog 2021-03-04 21:18:44 +01:00
Omer Korner
e07dd64925
Allow the scope to be either a list or comma separated string (#650)
* Allow the scope to be either a list or comma separated string

* Move normalize scope to util file and make it a base method

Also adjust documentation to reflect the new scope parameter supporting a list

* Add change to CHANGELOG.md
2021-03-04 18:56:39 +01:00
Rob Sanek
d001326cc3
Allow both id types in playlist_change_details (#649) 2021-03-02 19:41:14 +01:00
Stéphane Bruckert
be399fd089
Update urllib3, fixes #647 (#648)
* Bump urllib3, fixes #647

* FAQ update
2021-02-28 14:53:02 +01:00
Stephane Bruckert
ef2ed1a9c5 Bump to 2.17.0 2021-02-28 10:12:26 +01:00