deezer-python-gql 0.13.2__tar.gz → 0.13.4__tar.gz

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.
Files changed (88) hide show
  1. {deezer_python_gql-0.13.2/deezer_python_gql.egg-info → deezer_python_gql-0.13.4}/PKG-INFO +1 -1
  2. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/base_client.py +4 -2
  3. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/base_client.py +4 -2
  4. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4/deezer_python_gql.egg-info}/PKG-INFO +1 -1
  5. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/pyproject.toml +1 -1
  6. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/LICENSE +0 -0
  7. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/MANIFEST.in +0 -0
  8. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/README.md +0 -0
  9. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/__init__.py +0 -0
  10. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/__init__.py +0 -0
  11. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_album_to_favorite.py +0 -0
  12. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_artist_to_favorite.py +0 -0
  13. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_audiobook_to_favorite.py +0 -0
  14. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_playlist_to_favorite.py +0 -0
  15. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_podcast_to_favorite.py +0 -0
  16. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_track_to_favorite.py +0 -0
  17. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/add_tracks_to_playlist.py +0 -0
  18. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/base_model.py +0 -0
  19. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/bookmark_podcast_episode.py +0 -0
  20. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/client.py +0 -0
  21. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/create_playlist.py +0 -0
  22. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/delete_playlist.py +0 -0
  23. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/enums.py +0 -0
  24. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/fragments.py +0 -0
  25. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_album.py +0 -0
  26. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_artist.py +0 -0
  27. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_artist_mix.py +0 -0
  28. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_audiobook.py +0 -0
  29. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_audiobook_chapter.py +0 -0
  30. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_charts.py +0 -0
  31. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_albums.py +0 -0
  32. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_artists.py +0 -0
  33. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_audiobooks.py +0 -0
  34. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_playlists.py +0 -0
  35. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_podcasts.py +0 -0
  36. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_favorite_tracks.py +0 -0
  37. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_flow.py +0 -0
  38. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_flow_batch.py +0 -0
  39. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_flow_config_tracks.py +0 -0
  40. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_flow_configs.py +0 -0
  41. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_livestream.py +0 -0
  42. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_made_for_me.py +0 -0
  43. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_me.py +0 -0
  44. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_music_together_affinity.py +0 -0
  45. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_music_together_group.py +0 -0
  46. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_music_together_groups.py +0 -0
  47. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_personal_tracks.py +0 -0
  48. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_playlist.py +0 -0
  49. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_podcast.py +0 -0
  50. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_podcast_episode.py +0 -0
  51. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_podcast_episode_bookmarks.py +0 -0
  52. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_podcast_episodes_by_ids.py +0 -0
  53. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_recently_played.py +0 -0
  54. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_recommendations.py +0 -0
  55. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_similar_tracks.py +0 -0
  56. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_smart_tracklist.py +0 -0
  57. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_track.py +0 -0
  58. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_track_mix.py +0 -0
  59. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_user_charts.py +0 -0
  60. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/get_user_playlists.py +0 -0
  61. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/input_types.py +0 -0
  62. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/mark_as_not_played_podcast_episode.py +0 -0
  63. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/mark_as_played_podcast_episode.py +0 -0
  64. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_create_group.py +0 -0
  65. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_generate_group_name.py +0 -0
  66. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_join_group.py +0 -0
  67. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_leave_group.py +0 -0
  68. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_refresh_suggested_tracklist.py +0 -0
  69. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/music_together_update_group_settings.py +0 -0
  70. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_album_from_favorite.py +0 -0
  71. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_artist_from_favorite.py +0 -0
  72. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_audiobook_from_favorite.py +0 -0
  73. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_playlist_from_favorite.py +0 -0
  74. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_podcast_from_favorite.py +0 -0
  75. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_track_from_favorite.py +0 -0
  76. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/remove_tracks_from_playlist.py +0 -0
  77. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/search.py +0 -0
  78. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/search_flows.py +0 -0
  79. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/unbookmark_podcast_episode.py +0 -0
  80. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/generated/update_playlist.py +0 -0
  81. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql/py.typed +0 -0
  82. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql.egg-info/SOURCES.txt +0 -0
  83. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql.egg-info/dependency_links.txt +0 -0
  84. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql.egg-info/not-zip-safe +0 -0
  85. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql.egg-info/requires.txt +0 -0
  86. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/deezer_python_gql.egg-info/top_level.txt +0 -0
  87. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/setup.cfg +0 -0
  88. {deezer_python_gql-0.13.2 → deezer_python_gql-0.13.4}/tests/test_client.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: deezer-python-gql
3
- Version: 0.13.2
3
+ Version: 0.13.4
4
4
  Summary: Async typed Python client for Deezer's Pipe GraphQL API.
5
5
  Author-email: Julian Daberkow <jdaberkow@users.noreply.github.com>
6
6
  License: Apache-2.0
@@ -321,14 +321,16 @@ class DeezerBaseClient:
321
321
  f'a{i}: audiobook(audiobookId: "{aid}") {{ id displayTitle }}'
322
322
  for i, aid in enumerate(album_ids)
323
323
  ]
324
- query = "{ " + " ".join(parts) + " }"
324
+ query = "query CheckAudiobookIds { " + " ".join(parts) + " }"
325
325
 
326
326
  resp = await self.execute(query, operation_name="CheckAudiobookIds")
327
327
  self._last_variables = {"album_ids": album_ids}
328
328
  try:
329
329
  data = self.get_data(resp)
330
330
  except GraphQLClientGraphQLMultiError:
331
- # All IDs were non-audiobooks — every alias returned an error.
331
+ # Expected when none of the IDs are audiobooks (every alias errors).
332
+ # Also handles transient API errors — return empty rather than crash.
333
+ logger.debug("CheckAudiobookIds: all %d IDs returned errors", len(album_ids))
332
334
  return set()
333
335
 
334
336
  audiobook_ids: set[str] = set()
@@ -323,14 +323,16 @@ class DeezerBaseClient:
323
323
  f'a{i}: audiobook(audiobookId: "{aid}") {{ id displayTitle }}'
324
324
  for i, aid in enumerate(album_ids)
325
325
  ]
326
- query = "{ " + " ".join(parts) + " }"
326
+ query = "query CheckAudiobookIds { " + " ".join(parts) + " }"
327
327
 
328
328
  resp = await self.execute(query, operation_name="CheckAudiobookIds")
329
329
  self._last_variables = {"album_ids": album_ids}
330
330
  try:
331
331
  data = self.get_data(resp)
332
332
  except GraphQLClientGraphQLMultiError:
333
- # All IDs were non-audiobooks — every alias returned an error.
333
+ # Expected when none of the IDs are audiobooks (every alias errors).
334
+ # Also handles transient API errors — return empty rather than crash.
335
+ logger.debug("CheckAudiobookIds: all %d IDs returned errors", len(album_ids))
334
336
  return set()
335
337
 
336
338
  audiobook_ids: set[str] = set()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: deezer-python-gql
3
- Version: 0.13.2
3
+ Version: 0.13.4
4
4
  Summary: Async typed Python client for Deezer's Pipe GraphQL API.
5
5
  Author-email: Julian Daberkow <jdaberkow@users.noreply.github.com>
6
6
  License: Apache-2.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "deezer-python-gql"
3
- version = "0.13.2"
3
+ version = "0.13.4"
4
4
  description = "Async typed Python client for Deezer's Pipe GraphQL API."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"