yandex-music-api/CHANGES.rst

200 行
14 KiB
ReStructuredText
Raw Blame 履歴

このファイルには曖昧(ambiguous)なUnicode文字が含まれています

このファイルには、他の文字と見間違える可能性があるUnicode文字が含まれています。 それが意図的なものと考えられる場合は、この警告を無視して構いません。 それらの文字を表示するにはエスケープボタンを使用します。

================
Список изменений
================
Версия 0.1.1
============
**25.03.2020**
**Закончено документирование всех классов и основных методов!**
**Переломные изменения**
- Классы отметок "мне нравится" для альбомов, плейлистов и исполнителей обобщены. Теперь представлены одним классом.
- Удаленные классы:
- ``ArtistsLikes``.
- ``AlbumsLikes``.
- ``PlaylistsLikes``.
- Новый класс: ``Like`` (поле ``type`` для определения содержимого).
- Изменено название пакета с ``status`` на ``account`` (`#195`_).
- Исправлено выбрасываемое исключение при таймауте:
- Прошлое исключение: ``TimeoutError`` (built-in).
- Новое исключение: ``TimedOut`` (``yandex_music.exceptions``).
- Удалены следующие файлы: ``requirements.txt``, ``requirements-dev.txt``, ``requirements-docs.txt``.
**Крупные изменения**
- Добавлено обнаружение новых полей с просьбой сообщить о них (`#216`_).
- Добавлена проверка на неизвестные поля.
- Добавлен вывод отладочной информации в виде warning'a.
- Добавлен шаблон issue для отправки логов.
- Добавлено поле ``type`` для класса ``SearchResult`` для определения типа результата поиска по объекту.
- Добавлены настройки пользователя (`#195`_):
- Добавлен класс ``UserSettings``.
- Добавлен метод для получения своих настроек (``account_settings``).
- Добавлен метод для получения настроек другого пользователя (``users_settings``).
- Добавлен метод для изменения настроек (``account_settings_set``).
- Добавлен возможность получить похожие треки (`#197`_):
- Добавлен класс ``TracksSimilar`` с полями трека и списка похожих треков.
- Добавлен метод для получения похожих треков (``tracks_similar``).
- Добавлены шоты от Алисы (`#185`_):
- Добавлен метод ``after_track`` в класс ``Client`` для получения контента для воспоризведения после трека (реклама, шот).
- Добавлены методы для загрузки обложки и аудиоверсии шота.
- Добавлены новые классы:
- ``Shot``
- ``ShotData``
- ``ShotEvent``
- ``ShotType``
- Добавлен метод для изменения видимости плейлиста (`#179`_).
- Добавлена поддержка Яндекс.Радио (`#20`_):
- Исправлена отправка фидбека.
- Написана инструкция по использованию (в доке к методу).
- Добавлен аругмент для перехода по цепочке треков.
- Добавлен метод для изменения настроек станции.
**Незначительные изменения и/или исправления**
- Убрано дублирование информации в документации (`#247`_).
- Добавленые новые поля в класс ``Track``: ``version``, ``remember_position`` (`#238`_).
- Добавлено исключение ``InvalidBitrate`` при попытке загрузить недопустимый трек по критериям (кодек, битрейт).
- Исправлено получение прямой ссылки на файл с кодеком AAC (`#237`_, `#25`_).
- Исправлено получение плейлиста с Алисой в лендинге (`#185`_).
- Исправлено название поля с ссылкой на источник в классе ``Description`` (с ``url`` на ``uri``).
- Исправлена десериализация несуществующего исполнителя.
- Добавлено поле ``version`` в класс ``Album`` (`#178`_).
- Поле ``picture`` класса ``Vinyl`` теперь опциональное.
- Поле ``week`` класса ``Ratings`` теперь опциональное.
- Поле ``product_id`` класса ``AutoRenewable`` теперь опциональное (`#182`_).
- Правки замечаний по codacy.
.. _`#216`: https://github.com/MarshalX/yandex-music-api/issues/216
.. _`#247`: https://github.com/MarshalX/yandex-music-api/issues/247
.. _`#237`: https://github.com/MarshalX/yandex-music-api/issues/237
.. _`#25`: https://github.com/MarshalX/yandex-music-api/issues/25
.. _`#238`: https://github.com/MarshalX/yandex-music-api/issues/238
.. _`#182`: https://github.com/MarshalX/yandex-music-api/issues/182
.. _`#195`: https://github.com/MarshalX/yandex-music-api/issues/195
.. _`#197`: https://github.com/MarshalX/yandex-music-api/issues/197
.. _`#20`: https://github.com/MarshalX/yandex-music-api/issues/20
.. _`#185`: https://github.com/MarshalX/yandex-music-api/issues/185
.. _`#179`: https://github.com/MarshalX/yandex-music-api/issues/179
.. _`#178`: https://github.com/MarshalX/yandex-music-api/issues/178
Версия 0.0.16
=============
**29.12.2019**
**Переломные изменения**
- Поле ``account`` переименовано в ``me`` и теперь содержит объект ``Status``, вместо ``Account`` (`#162`_).
- Убрано использование зарезервированных имён в аргументах конструкторов (теперь они с ``_`` на конце). Имена с нижними подчёркиваниями есть как при сериализации так и при десериализации (`#168`_).
**Крупные изменения**
- **Добавлены аннотации типов во всей библиотеке!**
**Незначительные изменения и/или исправления**
- Добавлен аргумент ``fetch_account_status`` для опциональности получения информации об аккаунте при инициализации клиента (`#162`_).
- Добавлены тесты c передачей пустого словаря в ``de_json`` и ``de_list`` (`#174`_).
- Использование ``ujson`` при наличии, обновлены зависимости (`#161`_).
- Добавлен в зависимости для разработки ``importlib_metadata`` для поддержки старых версий (в новой версии ``pytest`` его больше не используют, в угоду ``importlib.metadata`` `#pytest-5537`_)) (`#161`_).
- Добавлен в зависимости для разработки ``atomicwrites``, который используется ``pytest`` теперь только на ``Windows`` - `#pytest-6148`_ (`#161`_).
- Исправлен баг с передачей ``timeout`` аргумента в аргумент ``params`` в следующих методах: ``artists``, ``albums``, ``playlists_list`` (`#120`_).
- Исправлена иницилазиация клиента при помощи логина и пароля с использованием прокси (`#159`_).
- Исправлен баг в загрузке обложки альбома.
.. _`#162`: https://github.com/MarshalX/yandex-music-api/issues/162
.. _`#161`: https://github.com/MarshalX/yandex-music-api/issues/161
.. _`#159`: https://github.com/MarshalX/yandex-music-api/issues/159
.. _`#168`: https://github.com/MarshalX/yandex-music-api/issues/168
.. _`#120`: https://github.com/MarshalX/yandex-music-api/issues/120
.. _`#174`: https://github.com/MarshalX/yandex-music-api/issues/174
.. _`#pytest-5537`: https://github.com/pytest-dev/pytest/issues/5537
.. _`#pytest-6148`: https://github.com/pytest-dev/pytest/pull/6148
Версия 0.0.15
=============
**01.12.2019**
**Переломные изменения**
- У классов ``Artist``, ``Track`` и ``Playlist`` изменился перечень полей для генерации хеша.
**Крупные изменения**
- Добавлена возможность выполнять запросы через прокси-сервер для использовании библиотеки на зарубежных серверах (`#139`_).
- Добавлен пример использования в ``README``.
- Добавлена обработка капчи при авторизации с возможностью использования callback-функции для её обработки (`#140`_):
- Новые исключения:
- Captcha:
- CaptchaRequired.
- CaptchaWrong.
- Новые классы:
- CaptchaResponse.
- Новые примеры в ``README``:
- Пример обработки с использованием callback-функции.
- Пример полностью своей обработки капчи.
- Добавлена документация для класса ``Search`` (`#83`_).
- Добавлена возможность получения всех альбомов исполнителя (`#141`_):
- Новые классы:
- ArtistAlbums.
- Новые методы:
- ``artists_direct_albums`` у ``Client``.
- ``get_albums`` у ``Artist``.
- Добавлена обработка несуществующего плейлиста (`#147`_):
- Новые классы:
- ``PlaylistAbsence``.
**Незначительные изменения и/или исправления**
- Исправлен баг с загрузкой файлов (`#149`_).
- Исправлен баг некорректной десериализации плейлиста при отсутствии прав на него (`#147`_).
- Исправлен баг неправильной десериализации треков и артистов у собственных загруженных файлов (`#154`_).
.. _`#139`: https://github.com/MarshalX/yandex-music-api/issues/139
.. _`#140`: https://github.com/MarshalX/yandex-music-api/issues/140
.. _`#83`: https://github.com/MarshalX/yandex-music-api/issues/83
.. _`#141`: https://github.com/MarshalX/yandex-music-api/issues/141
.. _`#149`: https://github.com/MarshalX/yandex-music-api/issues/149
.. _`#147`: https://github.com/MarshalX/yandex-music-api/issues/147
.. _`#154`: https://github.com/MarshalX/yandex-music-api/issues/154
Версия 0.0.14
=============
**10.11.2019**
**Переломные изменения**
- Практически у всех классов был обновлён список полей участвующих при сравнении объектов.
- Если в атрибутах для стравнения объектов присутствуют списки, то они будут преобразованы к frozenset.
- Убрано конвертирование даты из строки в объект. Теперь все даты представляны строками в ISO формате.
- Классы ``AlbumSearchResult``, ``ArtistSearchResult``, ``PlaylistSearchResult``, ``TrackSearchResult``, ``VideoSearchResult`` были объединены в один - ``SearchResult``.
**Крупные изменения**
- Добавлен метод получения треков исполнителя (`#123`_).
- Добавлены классы-обёртки над пагинацией (``Pager``) и списка треков артиста (``ArtistsTracks``).
- Добавлено **554** unit-теста для всех классов-обёрток над объектами API.
- Добавлен codecov и workflows для GitHub Actions.
.. _`#123`: https://github.com/MarshalX/yandex-music-api/pull/123
**Незначительные изменения и/или исправления**
- Поле ``cover_uri`` класса ``Album`` теперь опциональное.
- Поле ``region`` у класса ``Account`` теперь не обязательное.
- Исправлен баг в ``.to_dict()`` методе, связанный с десериализцией объектов списков и словарей.
- Исправлен баг в ``.to_dict()`` методе, связанный с не рекурсивной десериализацией.
- Исправлена десериализация ``similar_artists`` в ``BriefInfo``.
- Исправлен баг с десериализацией ``artist`` в классе ``ArtistEvent``.
- Исправлен баг десериализации списка альбомов и артистов у класса ``Track`` (`#122`_).
- Исправлена загрузка обложки у трека.
- Исправлены сравнения объектов.
.. _`#122`: https://github.com/MarshalX/yandex-music-api/pull/122