добавил ссылки на задачи к TODO не связанных с документацией (close #549)

このコミットが含まれているのは:
Ilya (Marshal) 2022-10-31 16:12:59 +01:00
コミット 6db8f8562b
7個のファイルの変更24行の追加13行の削除

ファイルの表示

@ -227,8 +227,6 @@ class Client(YandexMusicObject):
if not data: if not data:
data = {param: str(value)} data = {param: str(value)}
# TODO (MarshalX) значения в data типа bool должны быть приведены к str при работе с async клиентом.
result = self._request.post(url, data=data, *args, **kwargs) result = self._request.post(url, data=data, *args, **kwargs)
return UserSettings.de_json(result, self) return UserSettings.de_json(result, self)
@ -366,7 +364,8 @@ class Client(YandexMusicObject):
url = f'{self.base_url}/landing3' url = f'{self.base_url}/landing3'
result = self._request.get(url, {'blocks': blocks, 'eitherUserId': '10254713668400548221'}, *args, **kwargs) result = self._request.get(url, {'blocks': blocks, 'eitherUserId': '10254713668400548221'}, *args, **kwargs)
# TODO что тут делает константа с моим User ID # TODO (MarshalX) что тут делает константа с чьим-то User ID
# https://github.com/MarshalX/yandex-music-api/issues/553
return Landing.de_json(result, self) return Landing.de_json(result, self)
@ -1146,6 +1145,7 @@ class Client(YandexMusicObject):
url = f'{self.base_url}/rotor/stations/list' url = f'{self.base_url}/rotor/stations/list'
# TODO (MarshalX) почему тут константный 'ru' когда есть поддержка выбора языка клиентом # TODO (MarshalX) почему тут константный 'ru' когда есть поддержка выбора языка клиентом
# https://github.com/MarshalX/yandex-music-api/issues/554
result = self._request.get(url, {'language': language}, *args, **kwargs) result = self._request.get(url, {'language': language}, *args, **kwargs)
@ -1358,7 +1358,7 @@ class Client(YandexMusicObject):
station: str, station: str,
mood_energy: str, mood_energy: str,
diversity: str, diversity: str,
language: str = 'not-russian', # TODO (MarshalX) почему не any language: str = 'not-russian', # TODO (MarshalX) почему не any https://github.com/MarshalX/yandex-music-api/issues/555
type_: str = 'rotor', type_: str = 'rotor',
*args, *args,
**kwargs, **kwargs,
@ -1689,7 +1689,8 @@ class Client(YandexMusicObject):
Raises: Raises:
:class:`yandex_music.exceptions.YandexMusicError`: Базовое исключение библиотеки. :class:`yandex_music.exceptions.YandexMusicError`: Базовое исключение библиотеки.
""" """
# TODO (Marshal) что за True. Переделать на named argument # TODO (MarshalX) что за True. Переделать на named argument
# https://github.com/MarshalX/yandex-music-api/issues/550
return self._like_action('artist', artist_ids, True, user_id, *args, **kwargs) return self._like_action('artist', artist_ids, True, user_id, *args, **kwargs)
@log @log
@ -2261,6 +2262,7 @@ class Client(YandexMusicObject):
result = self._request.get(url, params=params, *args, **kwargs) result = self._request.get(url, params=params, *args, **kwargs)
# TODO (MarshalX) судя по всему ручка ещё возвращает рекламу после треков для пользователей без подписки. # TODO (MarshalX) судя по всему ручка ещё возвращает рекламу после треков для пользователей без подписки.
# https://github.com/MarshalX/yandex-music-api/issues/557
return ShotEvent.de_json(result.get('shot_event'), self) return ShotEvent.de_json(result.get('shot_event'), self)
@log @log

ファイルの表示

@ -231,8 +231,6 @@ class ClientAsync(YandexMusicObject):
if not data: if not data:
data = {param: str(value)} data = {param: str(value)}
# TODO (MarshalX) значения в data типа bool должны быть приведены к str при работе с async клиентом.
result = await self._request.post(url, data=data, *args, **kwargs) result = await self._request.post(url, data=data, *args, **kwargs)
return UserSettings.de_json(result, self) return UserSettings.de_json(result, self)
@ -372,7 +370,8 @@ class ClientAsync(YandexMusicObject):
result = await self._request.get( result = await self._request.get(
url, {'blocks': blocks, 'eitherUserId': '10254713668400548221'}, *args, **kwargs url, {'blocks': blocks, 'eitherUserId': '10254713668400548221'}, *args, **kwargs
) )
# TODO что тут делает константа с моим User ID # TODO (MarshalX) что тут делает константа с чьим-то User ID
# https://github.com/MarshalX/yandex-music-api/issues/553
return Landing.de_json(result, self) return Landing.de_json(result, self)
@ -1156,6 +1155,7 @@ class ClientAsync(YandexMusicObject):
url = f'{self.base_url}/rotor/stations/list' url = f'{self.base_url}/rotor/stations/list'
# TODO (MarshalX) почему тут константный 'ru' когда есть поддержка выбора языка клиентом # TODO (MarshalX) почему тут константный 'ru' когда есть поддержка выбора языка клиентом
# https://github.com/MarshalX/yandex-music-api/issues/554
result = await self._request.get(url, {'language': language}, *args, **kwargs) result = await self._request.get(url, {'language': language}, *args, **kwargs)
@ -1368,7 +1368,7 @@ class ClientAsync(YandexMusicObject):
station: str, station: str,
mood_energy: str, mood_energy: str,
diversity: str, diversity: str,
language: str = 'not-russian', # TODO (MarshalX) почему не any language: str = 'not-russian', # TODO (MarshalX) почему не any https://github.com/MarshalX/yandex-music-api/issues/555
type_: str = 'rotor', type_: str = 'rotor',
*args, *args,
**kwargs, **kwargs,
@ -1699,7 +1699,8 @@ class ClientAsync(YandexMusicObject):
Raises: Raises:
:class:`yandex_music.exceptions.YandexMusicError`: Базовое исключение библиотеки. :class:`yandex_music.exceptions.YandexMusicError`: Базовое исключение библиотеки.
""" """
# TODO (Marshal) что за True. Переделать на named argument # TODO (MarshalX) что за True. Переделать на named argument
# https://github.com/MarshalX/yandex-music-api/issues/550
return await self._like_action('artist', artist_ids, True, user_id, *args, **kwargs) return await self._like_action('artist', artist_ids, True, user_id, *args, **kwargs)
@log @log
@ -2277,6 +2278,7 @@ class ClientAsync(YandexMusicObject):
result = await self._request.get(url, params=params, *args, **kwargs) result = await self._request.get(url, params=params, *args, **kwargs)
# TODO (MarshalX) судя по всему ручка ещё возвращает рекламу после треков для пользователей без подписки. # TODO (MarshalX) судя по всему ручка ещё возвращает рекламу после треков для пользователей без подписки.
# https://github.com/MarshalX/yandex-music-api/issues/557
return ShotEvent.de_json(result.get('shot_event'), self) return ShotEvent.de_json(result.get('shot_event'), self)
@log @log

ファイルの表示

@ -9,6 +9,7 @@ class UnauthorizedError(YandexMusicError):
# TODO (MarshalX) На самом деле поиск еще происходит по кодеку # TODO (MarshalX) На самом деле поиск еще происходит по кодеку
# https://github.com/MarshalX/yandex-music-api/issues/552
class InvalidBitrateError(YandexMusicError): class InvalidBitrateError(YandexMusicError):
"""Класс исключения, вызываемого при попытке загрузки трека """Класс исключения, вызываемого при попытке загрузки трека
с недоступным битрейтом. с недоступным битрейтом.

ファイルの表示

@ -48,7 +48,7 @@ class CaseForms(YandexMusicObject):
client (:obj:`yandex_music.Client`, optional): Клиент Yandex Music. client (:obj:`yandex_music.Client`, optional): Клиент Yandex Music.
Returns: Returns:
:obj:`yandex_music.CaseForms`: TODO. :obj:`yandex_music.CaseForms`: Склонение имени.
""" """
if not data: if not data:
return None return None

ファイルの表示

@ -49,3 +49,4 @@ class Tag(YandexMusicObject):
return cls(client=client, **data) return cls(client=client, **data)
# TODO (MarshalX) add download_og_image shortcut? # TODO (MarshalX) add download_og_image shortcut?
# https://github.com/MarshalX/yandex-music-api/issues/556

ファイルの表示

@ -47,3 +47,4 @@ class TagResult(YandexMusicObject):
return cls(client=client, **data) return cls(client=client, **data)
# TODO (MarshalX) add fetch_playlists shortcut? # TODO (MarshalX) add fetch_playlists shortcut?
# https://github.com/MarshalX/yandex-music-api/issues/551

ファイルの表示

@ -75,14 +75,18 @@ class Difference:
Returns: Returns:
:obj:`yandex_music.utils.difference.Difference`: Набор операций над плейлистом. :obj:`yandex_music.utils.difference.Difference`: Набор операций над плейлистом.
""" """
# TODO принимать TrackId, а так же строку и сплитить её по ":". При отсутствии album_id кидать исключение. # TODO (MarshalX) принимать TrackId, а так же строку и сплитить её по ":".
# При отсутствии album_id кидать исключение.
# https://github.com/MarshalX/yandex-music-api/issues/558
if not isinstance(tracks, list): if not isinstance(tracks, list):
tracks = [tracks] tracks = [tracks]
operation = {'op': Operation.INSERT.value, 'at': at, 'tracks': []} operation = {'op': Operation.INSERT.value, 'at': at, 'tracks': []}
for track in tracks: for track in tracks:
track = type('TrackId', (), track) # TODO replace to normal TrackId object # TODO (MarshalX) replace to normal TrackId object
# https://github.com/MarshalX/yandex-music-api/issues/558
track = type('TrackId', (), track)
operation['tracks'].append({'id': track.id, 'albumId': track.album_id}) operation['tracks'].append({'id': track.id, 'albumId': track.album_id})