spotifywebapiPython 1.0.262__py3-none-any.whl → 1.0.263__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- spotifywebapipython/const.py +1 -1
- spotifywebapipython/docs/__init__.html +9 -2
- spotifywebapipython/docs/index.html +2 -2
- spotifywebapipython/docs/search.js +1 -1
- spotifywebapipython/docs/spotifywebapipython/const.html +3 -3
- spotifywebapipython/docs/spotifywebapipython/saappmessages.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/sautils.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifyapierror.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifyapimessage.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifyauthtoken.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifyclient.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifydiscovery.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifymediatypes.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifytypeprefixes.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifywebapiauthenticationerror.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifywebapierror.html +2 -2
- spotifywebapipython/docs/spotifywebapipython/spotifywebplayertoken.html +2 -2
- spotifywebapipython/models/playerlastplayedinfo.py +3 -2
- spotifywebapipython/oauthcli/authclient.py +2 -1
- spotifywebapipython/spotifyclient.py +43 -10
- {spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/METADATA +1 -1
- {spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/RECORD +25 -25
- {spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/LICENSE +0 -0
- {spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/WHEEL +0 -0
- {spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/top_level.txt +0 -0
|
@@ -67,6 +67,10 @@ from .const import (
|
|
|
67
67
|
|
|
68
68
|
CACHE_SOURCE_CACHED:str = "cached"
|
|
69
69
|
CACHE_SOURCE_CURRENT:str = "current"
|
|
70
|
+
CACHE_KEY_GETSPOTIFYCONNECTDEVICES:str = "GetSpotifyConnectDevices"
|
|
71
|
+
|
|
72
|
+
MUSIC_SOURCE_SPOTIFY_LOCAL_QUEUE:str = "SPOTIFY_LOCAL_QUEUE"
|
|
73
|
+
MUSIC_SOURCE_SPOTIFY_CONNECT:str = "SPOTIFY_CONNECT"
|
|
70
74
|
|
|
71
75
|
DELAY_DISCONNECT:float = 0.350
|
|
72
76
|
"""
|
|
@@ -1084,6 +1088,10 @@ class SpotifyClient:
|
|
|
1084
1088
|
# Spotify Connect devices on the local network.
|
|
1085
1089
|
self._SpotifyConnectDirectory.WaitForInitComplete.wait()
|
|
1086
1090
|
|
|
1091
|
+
# load initial configuration cache with devices we have found thus far.
|
|
1092
|
+
# no need to refresh, since they were just loaded (just loads the cache).
|
|
1093
|
+
self.GetSpotifyConnectDevices(refresh=False)
|
|
1094
|
+
|
|
1087
1095
|
# trace.
|
|
1088
1096
|
_logsi.LogVerbose("Spotify Connect Directory task was started and initialized successfully")
|
|
1089
1097
|
|
|
@@ -6844,9 +6852,17 @@ class SpotifyClient:
|
|
|
6844
6852
|
# get Sonos playback state via Sonos Controller instance.
|
|
6845
6853
|
playerStateSonos:PlayerPlayState = self.GetPlayerPlaybackStateSonos(scDevice)
|
|
6846
6854
|
|
|
6847
|
-
#
|
|
6848
|
-
|
|
6849
|
-
|
|
6855
|
+
# is the device still playing spotify content?
|
|
6856
|
+
if (playerStateSonos.DeviceMusicSource in [MUSIC_SOURCE_SPOTIFY_CONNECT, MUSIC_SOURCE_SPOTIFY_LOCAL_QUEUE]):
|
|
6857
|
+
|
|
6858
|
+
# yes - return the device playstate.
|
|
6859
|
+
_logsi.LogVerbose("Sonos device %s playstate will be returned (music source=\"%s\")" % (scDevice.Title, playerStateSonos.DeviceMusicSource))
|
|
6860
|
+
result = playerStateSonos
|
|
6861
|
+
|
|
6862
|
+
else:
|
|
6863
|
+
|
|
6864
|
+
# no - return an empty playstate.
|
|
6865
|
+
_logsi.LogVerbose("Sonos device %s music source (%s) is not Spotify; an empty playstate will be returned" % (scDevice.Title, playerStateSonos.DeviceMusicSource))
|
|
6850
6866
|
|
|
6851
6867
|
# did Sonos Controller instance return a playstate?
|
|
6852
6868
|
# if so, then update the player last played info if something is playing.
|
|
@@ -8705,18 +8721,25 @@ class SpotifyClient:
|
|
|
8705
8721
|
else:
|
|
8706
8722
|
result.ItemType = SpotifyMediaTypes.PODCAST.value
|
|
8707
8723
|
|
|
8708
|
-
#
|
|
8709
|
-
# cached list of spotify connect devices (if present).
|
|
8724
|
+
# if device id is not present (e.g. a restricted device), then get the device id
|
|
8725
|
+
# from the cached list of spotify connect devices (if present).
|
|
8710
8726
|
if (not result.IsEmpty):
|
|
8711
8727
|
device:Device = result.Device
|
|
8712
8728
|
if (device is not None) and (device.Id is None or device.Id == ''):
|
|
8713
|
-
cacheKey:str =
|
|
8729
|
+
cacheKey:str = CACHE_KEY_GETSPOTIFYCONNECTDEVICES
|
|
8714
8730
|
if (cacheKey in self._ConfigurationCache):
|
|
8715
8731
|
devices:SpotifyConnectDevices = self._ConfigurationCache[cacheKey]
|
|
8716
8732
|
scDevice:SpotifyConnectDevice = devices.GetDeviceByName(device.Name)
|
|
8717
8733
|
if scDevice is not None:
|
|
8718
8734
|
device.Id = scDevice.DeviceInfo.DeviceId
|
|
8719
|
-
|
|
8735
|
+
# is this a Sonos device? if so, then update the music source.
|
|
8736
|
+
# at this point, it will probably be "SPOTIFY_CONNECT" since it was
|
|
8737
|
+
# detected in the Spotify Web API device list.
|
|
8738
|
+
if (scDevice.IsSonos):
|
|
8739
|
+
sonosPlayer = self._SpotifyConnectDirectory.GetSonosPlayer(scDevice)
|
|
8740
|
+
if (sonosPlayer):
|
|
8741
|
+
result.DeviceMusicSource = sonosPlayer.music_source
|
|
8742
|
+
|
|
8720
8743
|
# did Spotify return a playstate?
|
|
8721
8744
|
# if so, then update the player last played info if something is playing.
|
|
8722
8745
|
if (not result.IsEmpty):
|
|
@@ -8796,6 +8819,16 @@ class SpotifyClient:
|
|
|
8796
8819
|
playerState.IsDeviceState = True
|
|
8797
8820
|
playerState.DeviceMusicSource = "" + str(sonosPlayer.music_source)
|
|
8798
8821
|
|
|
8822
|
+
# at this point, the the device music_source is probably set to one of the following:
|
|
8823
|
+
# - "UNKNOWN": indicates that Spotify is POSSIBLY playing from the Sonos local queue.
|
|
8824
|
+
# - "SPOTIFY_CONNECT": indicates that Spotify is playing via Spotify Connect using Spotify App.
|
|
8825
|
+
# if not SPOTIFY_CONNECT, then check the currently playing track info to see if it's
|
|
8826
|
+
# a Spotify uri; if so, then it's (probably) playing Spotify from the local queue, so
|
|
8827
|
+
# we will set the music source to the "SPOTIFY_LOCAL_QUEUE" custom value.
|
|
8828
|
+
if (playerState.DeviceMusicSource != MUSIC_SOURCE_SPOTIFY_CONNECT):
|
|
8829
|
+
if (sonosTrackInfo.get('uri','').startswith("x-sonos-spotify:")):
|
|
8830
|
+
playerState.DeviceMusicSource = MUSIC_SOURCE_SPOTIFY_LOCAL_QUEUE
|
|
8831
|
+
|
|
8799
8832
|
# update Spotify Web API player state with Sonos player state.
|
|
8800
8833
|
playerState._Device._Id = scDevice.Id
|
|
8801
8834
|
playerState._Device._Name = sonosPlayer.player_name
|
|
@@ -10869,7 +10902,7 @@ class SpotifyClient:
|
|
|
10869
10902
|
# was the Sonos device music source set to SPOTIFY_CONNECT?
|
|
10870
10903
|
# if not, then issue a Disconnect to (hopefully) reset the music source. this should allow
|
|
10871
10904
|
# the subsequent Connect to re-establish a SPOTIFY_CONNECT music source on the Sonos device.
|
|
10872
|
-
if sonosMusicSource !=
|
|
10905
|
+
if sonosMusicSource != MUSIC_SOURCE_SPOTIFY_CONNECT:
|
|
10873
10906
|
_logsi.LogVerbose("Issuing Disconnect to Sonos Spotify Connect device %s" % (scDevice.Title))
|
|
10874
10907
|
zcfResult = zconn.Disconnect(ignoreStatusResult=True)
|
|
10875
10908
|
|
|
@@ -10893,7 +10926,7 @@ class SpotifyClient:
|
|
|
10893
10926
|
|
|
10894
10927
|
# was the Sonos device music source set to Spotify Connect?
|
|
10895
10928
|
# if not, then it's a lost cause at this point since it's probably in an UNKNOWN state.
|
|
10896
|
-
if sonosMusicSource !=
|
|
10929
|
+
if sonosMusicSource != MUSIC_SOURCE_SPOTIFY_CONNECT:
|
|
10897
10930
|
_logsi.LogVerbose("Sonos device %s music source after Connect is not SPOTIFY_CONNECT; it will probably fail to play" % (scDevice.Title))
|
|
10898
10931
|
elif (self.HasSpotifyWebPlayerCredentials):
|
|
10899
10932
|
# if using Spotify Web Player credentials, then we don't have to wait for device.
|
|
@@ -11048,7 +11081,7 @@ class SpotifyClient:
|
|
|
11048
11081
|
result = self._SpotifyConnectDirectory.GetDevices()
|
|
11049
11082
|
|
|
11050
11083
|
# update cache.
|
|
11051
|
-
self._ConfigurationCache[
|
|
11084
|
+
self._ConfigurationCache[CACHE_KEY_GETSPOTIFYCONNECTDEVICES] = result
|
|
11052
11085
|
|
|
11053
11086
|
# trace.
|
|
11054
11087
|
_logsi.LogArray(SILevel.Verbose, TRACE_METHOD_RESULT_TYPE_CACHED % (apiMethodName, type(result).__name__, cacheDesc), result)
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
spotifywebapipython/__init__.py,sha256=ka7F2AsT-UU7KSYKBnfgl5Trojcep5aQspLutg8D-2k,1306
|
|
2
|
-
spotifywebapipython/const.py,sha256=
|
|
2
|
+
spotifywebapipython/const.py,sha256=X1O3doqDi2CZV-htEm6RmwUdvBvSb1rxTkwFACaTdN8,3923
|
|
3
3
|
spotifywebapipython/saappmessages.py,sha256=mVprjpd5CdD8kYeAkLzRvMvIQPmaYtH4UCP5my3QhSk,5065
|
|
4
4
|
spotifywebapipython/sautils.py,sha256=j3f_Lu3Tb5D7-Gd2rJ2Ep901W-4XDp6Vq6XXVl8DX5I,8098
|
|
5
5
|
spotifywebapipython/spotifyapierror.py,sha256=23_CYlxWN0BceYYCLpBpunl55vEwPr_wFf34l74xzeA,1855
|
|
6
6
|
spotifywebapipython/spotifyapimessage.py,sha256=wCnW8jYMLS3x9kjyXPgXXZqaf1HeMTTXzU8u_Dm5pfA,8447
|
|
7
7
|
spotifywebapipython/spotifyauthtoken.py,sha256=iVg2Pa5mfMqYe4qgc5H8td6JzJlaDqk4vMEhH5LmtfI,9289
|
|
8
|
-
spotifywebapipython/spotifyclient.py,sha256=
|
|
8
|
+
spotifywebapipython/spotifyclient.py,sha256=3O67xgSi1WphKR8_KrIi9KefWzALb1AnHK14j3vGuFQ,895623
|
|
9
9
|
spotifywebapipython/spotifydiscovery.py,sha256=cyysxl8PQj9yGHVbaqhSF3SStlrp-NvfGAudM-dDmg0,20290
|
|
10
10
|
spotifywebapipython/spotifymediatypes.py,sha256=hMjkxhbfTtks0_P8BKmY7qg3EmB2zhH3RT0DbEpb_2s,1628
|
|
11
11
|
spotifywebapipython/spotifytypeprefixes.py,sha256=3yfpxKF7jF694qBuo-PbKYvm70YwwdBoGj9enOpWsAg,1375
|
|
12
12
|
spotifywebapipython/spotifywebapiauthenticationerror.py,sha256=5A0MKvYo3Ypv0ZeSSfLHuFLwzoUUu044bBoUgMfNXNw,3940
|
|
13
13
|
spotifywebapipython/spotifywebapierror.py,sha256=5cga9213J_nFQ0UX4vSn3dpyinASKTRiH0wAR4nLjvs,3147
|
|
14
14
|
spotifywebapipython/spotifywebplayertoken.py,sha256=axj1j1lM7COiiZfpElkJRdnk4AmE6bAQcjKshUIz1Nk,35813
|
|
15
|
-
spotifywebapipython/docs/__init__.html,sha256=
|
|
15
|
+
spotifywebapipython/docs/__init__.html,sha256=Mbe_gNtLqnRX9sCOatchw7RQyrN1wJJhP8Bbs8T0XeA,186244
|
|
16
16
|
spotifywebapipython/docs/codecopy.js,sha256=ryuoZwLIL03YitjjFzn49UO5ta7-OBos6LNA3qHhFzs,3120
|
|
17
|
-
spotifywebapipython/docs/index.html,sha256=
|
|
18
|
-
spotifywebapipython/docs/search.js,sha256
|
|
17
|
+
spotifywebapipython/docs/index.html,sha256=J8oWTry75qWoIfz_KCJ1PRH8vTajRQXTvnBSFMENbDc,48779
|
|
18
|
+
spotifywebapipython/docs/search.js,sha256=HCnF-ooWrM_2QDC6WeM08U_AEAmX49BK7pG4xjOpxSg,9147212
|
|
19
19
|
spotifywebapipython/docs/spotifywebapipython.ico,sha256=YImj39fqqSPSuB2-sMDlUYDd6YwRfQeJRtq4FjwWglg,16410
|
|
20
20
|
spotifywebapipython/docs/spotifywebapipython_OLD.ico,sha256=YIv5LjcD4bTIJQSOr8jjwbWaeB3QkElRwkTOePiGbZo,14904
|
|
21
|
-
spotifywebapipython/docs/spotifywebapipython/const.html,sha256=
|
|
22
|
-
spotifywebapipython/docs/spotifywebapipython/saappmessages.html,sha256=
|
|
23
|
-
spotifywebapipython/docs/spotifywebapipython/sautils.html,sha256=
|
|
24
|
-
spotifywebapipython/docs/spotifywebapipython/spotifyapierror.html,sha256=
|
|
25
|
-
spotifywebapipython/docs/spotifywebapipython/spotifyapimessage.html,sha256=
|
|
26
|
-
spotifywebapipython/docs/spotifywebapipython/spotifyauthtoken.html,sha256
|
|
27
|
-
spotifywebapipython/docs/spotifywebapipython/spotifyclient.html,sha256=
|
|
28
|
-
spotifywebapipython/docs/spotifywebapipython/spotifydiscovery.html,sha256=
|
|
29
|
-
spotifywebapipython/docs/spotifywebapipython/spotifymediatypes.html,sha256=
|
|
30
|
-
spotifywebapipython/docs/spotifywebapipython/spotifytypeprefixes.html,sha256=
|
|
31
|
-
spotifywebapipython/docs/spotifywebapipython/spotifywebapiauthenticationerror.html,sha256=
|
|
32
|
-
spotifywebapipython/docs/spotifywebapipython/spotifywebapierror.html,sha256=
|
|
33
|
-
spotifywebapipython/docs/spotifywebapipython/spotifywebplayertoken.html,sha256=
|
|
21
|
+
spotifywebapipython/docs/spotifywebapipython/const.html,sha256=m2bDOn2RhAUvCDOLdxhcZvR8EQDtrN0qMxtVD_rSXqU,59805
|
|
22
|
+
spotifywebapipython/docs/spotifywebapipython/saappmessages.html,sha256=M-PhRbUYM7rw8AgTTyCXUinTZmIvWtZJXNdXCo73Np4,62358
|
|
23
|
+
spotifywebapipython/docs/spotifywebapipython/sautils.html,sha256=B99_1_h8_1vCRBqCP1WHLkgBAXDdCLoIFrmVjIZ3yug,61063
|
|
24
|
+
spotifywebapipython/docs/spotifywebapipython/spotifyapierror.html,sha256=ISzyl60Sgi11InldvQ8WNeqfAbCNa7anQOVsAdW6K20,48054
|
|
25
|
+
spotifywebapipython/docs/spotifywebapipython/spotifyapimessage.html,sha256=chuosQxoJBXjcmuabFOH15cumPZ1zNJsWL330AO_R98,59210
|
|
26
|
+
spotifywebapipython/docs/spotifywebapipython/spotifyauthtoken.html,sha256=-qJTTEx6V71TYYDTyi-pIr4-1DAVSD7sU0hIRBr6BSc,59256
|
|
27
|
+
spotifywebapipython/docs/spotifywebapipython/spotifyclient.html,sha256=WOGxzoZ3KoId_N2GE_I9dLwUWX_QI0QHsHyAGkfJGxU,1670639
|
|
28
|
+
spotifywebapipython/docs/spotifywebapipython/spotifydiscovery.html,sha256=7VXh0YMjMhOCJ5PrVU27WYPjxHWS_bsYuenQ-49tbb0,57662
|
|
29
|
+
spotifywebapipython/docs/spotifywebapipython/spotifymediatypes.html,sha256=kMpGOHLomKKAUuerbS7ydCkmhWeYFSZYzsdlmeiLXOE,51532
|
|
30
|
+
spotifywebapipython/docs/spotifywebapipython/spotifytypeprefixes.html,sha256=PeKPBD3d_qudE2qNORMPHGZjl0R-tX_wQL-VyjBym6g,52401
|
|
31
|
+
spotifywebapipython/docs/spotifywebapipython/spotifywebapiauthenticationerror.html,sha256=xs3chHX43VZuQD2JC_jSxLT94XVYUChtyjCOWgI9wEQ,52174
|
|
32
|
+
spotifywebapipython/docs/spotifywebapipython/spotifywebapierror.html,sha256=xsu5CtzcSMMQGcl3zPY-b06ZgboNV0RN6-a_hS8SsG8,50592
|
|
33
|
+
spotifywebapipython/docs/spotifywebapipython/spotifywebplayertoken.html,sha256=Oooy-uaRi2fIfwTaFcQEi-qzchwcOepzYBKcCZoq6Oc,62204
|
|
34
34
|
spotifywebapipython/models/__init__.py,sha256=RwRQhUX-6EUs8XvStVFpR8EPwoqIAz9K6ref-28qHKI,4423
|
|
35
35
|
spotifywebapipython/models/album.py,sha256=U3Pdw0-EL33LdkeiN31fjZ23rlLk6DNGV8jRmZU7EyQ,5170
|
|
36
36
|
spotifywebapipython/models/albumpagesaved.py,sha256=SBYMhkh5ZsMrRAXl-cm9zsxMDh8gO190ENq6Py2TyGY,2417
|
|
@@ -72,7 +72,7 @@ spotifywebapipython/models/narrator.py,sha256=8gkYk8YkWX7m0ErDs9pwkWbXKkGmCMCFVP
|
|
|
72
72
|
spotifywebapipython/models/owner.py,sha256=RokGhciF6TV43svWzeqyvKClhm1YuT0jW5XTx54ZEsI,4543
|
|
73
73
|
spotifywebapipython/models/pageobject.py,sha256=KEQhaapYL-7eSxc2gHGqZnozBJs3wJ888W1wLZwRCD0,11045
|
|
74
74
|
spotifywebapipython/models/playeractions.py,sha256=GaqEBcmHev8eoCXb51xt8O9trqeOhIpIysjlKYWOBY0,6564
|
|
75
|
-
spotifywebapipython/models/playerlastplayedinfo.py,sha256=
|
|
75
|
+
spotifywebapipython/models/playerlastplayedinfo.py,sha256=7Dt-0K3bdfbWzLb3quaDW-ge_F3WVD08O5D1m0FOpzE,11015
|
|
76
76
|
spotifywebapipython/models/playerplaystate.py,sha256=v5uzD-ck6SvMpWASKbXsAHrDC6-uhZglpszVXXLNQ3g,15231
|
|
77
77
|
spotifywebapipython/models/playerqueueinfo.py,sha256=BryoQ7UjiuUxNRQrIW7bl2_S0FaIeKwYyG1cVSZXemk,7204
|
|
78
78
|
spotifywebapipython/models/playhistory.py,sha256=GO2rM1H6O5BvKuCDKq7p7rb1vBk7JF-QoHeU9nJ_4i0,3853
|
|
@@ -107,7 +107,7 @@ spotifywebapipython/models/userprofilesimplified.py,sha256=YCEVED8PMeqWkORMHwj0J
|
|
|
107
107
|
spotifywebapipython/models/zeroconfdiscoveryresult.py,sha256=XID2qmaK2WTGJoLTQ54aQjfutLJMLgJ7A1ATwAp06kY,20250
|
|
108
108
|
spotifywebapipython/models/zeroconfproperty.py,sha256=sXGUqbHhFMutCNKFJwJKbNbbQAnBnR7Ob5wNDSePxZk,2141
|
|
109
109
|
spotifywebapipython/oauthcli/__init__.py,sha256=K37XTxYAKT0n8otCNzWbjgJ10fAPN4WL6seEpwvWyo4,168
|
|
110
|
-
spotifywebapipython/oauthcli/authclient.py,sha256
|
|
110
|
+
spotifywebapipython/oauthcli/authclient.py,sha256=rpOgX8T-co8JByHlmB6JJqvXUaphP7jDhJ4qjhf0XA8,56065
|
|
111
111
|
spotifywebapipython/spotifyconnect/__init__.py,sha256=9Xl5KiJFvWLbsdb4YQ0xmF67i36ybpXCCXrWeNsKEvc,1108
|
|
112
112
|
spotifywebapipython/spotifyconnect/spotifyconnectdeviceeventargs.py,sha256=35hKa0FAaPgy7W8D6MFXmga667pjwXITo8jSj1TDfE8,1988
|
|
113
113
|
spotifywebapipython/spotifyconnect/spotifyconnectdirectorytask.py,sha256=QXNpJSqUGuOYxCzvDH63Ka9L9Yo7Bb5iVBRtDhc4ILE,153923
|
|
@@ -137,8 +137,8 @@ spotifywebapipython/zeroconfapi/zeroconfgetinfo.py,sha256=APayso_F7lCsdzzrkescgd
|
|
|
137
137
|
spotifywebapipython/zeroconfapi/zeroconfgetinfoalias.py,sha256=FZJM23HIPJSfhXIC3-EuS1XhawheoG5maSp7__k4yBo,2932
|
|
138
138
|
spotifywebapipython/zeroconfapi/zeroconfgetinfodrmmediaformat.py,sha256=c5uk8ljsIuBK3w2jahHKQuoWvm245LOjUBitetXx5Mo,2347
|
|
139
139
|
spotifywebapipython/zeroconfapi/zeroconfresponse.py,sha256=mAPIDj5MG53x8peiScrp7OJblwy_o_Sto4wqE0rGujU,6445
|
|
140
|
-
spotifywebapipython-1.0.
|
|
141
|
-
spotifywebapipython-1.0.
|
|
142
|
-
spotifywebapipython-1.0.
|
|
143
|
-
spotifywebapipython-1.0.
|
|
144
|
-
spotifywebapipython-1.0.
|
|
140
|
+
spotifywebapipython-1.0.263.dist-info/LICENSE,sha256=KGcc9g0zwqNLcWnSn_ezv1UtKyhMENFhvtixpxUPNsE,1177
|
|
141
|
+
spotifywebapipython-1.0.263.dist-info/METADATA,sha256=G2E7xQSkFRE0u3QWzdW3iqL7GgjL868pG8jaMhTtwnc,11644
|
|
142
|
+
spotifywebapipython-1.0.263.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
|
|
143
|
+
spotifywebapipython-1.0.263.dist-info/top_level.txt,sha256=jTBLFlijKTesYh2dteAz4vb17qjaqWKeDjpnnwTcrjs,20
|
|
144
|
+
spotifywebapipython-1.0.263.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
{spotifywebapipython-1.0.262.dist-info → spotifywebapipython-1.0.263.dist-info}/top_level.txt
RENAMED
|
File without changes
|