Исправлены фикстуры и сравнения для вышеперечисленных классов.
Изменён `__hash__` всех объектов. Теперь списки можно использовать в _id_attrs. Они кастуются в frozenset.
Обновлен список _id_attrs большинства объектов и тесты сравнения.
Результаты поиска любого типа теперь представлены одним классом - SearchResult.
Обновлена документации к Pager, ArtistTracks, сокращению и методу Client'a.
Исправлен конструктор класса Pager.
В сокращении у класса Artist на получение треков убрано подставление количества треков (counts может быть None).
Добавлены .rst файлы.
Добавлены следующие классы: BriefInfo, Description, Vinyl, PlaylistId.
Класс Video вынесен из пакета Search в корень.
Добавлен de_list в Cover.
Добавлены следующие поля в класс Artist: likes_count, full_names, description, countries, en_wikipedia_link, db_aliases, aliases, init_date, end_date.
Добавлено поле track_id в класс Chart.
Добавлено поле available_full_without_permission в класс Track.
Класс Video расширен для поддержки второго типа (используется в brief info, спасибо яндух) видео (добавлены необязательные поля cover, embed_url, provider, provider_video_id).
Обновлена документация.
The following methods are wrapped:
- /rotor/account/status
- /rotor/stations/dashboard
- /rotor/stations/list
- /rotor/station/genre:{genre}/feedback
- /rotor/station/genre:{genre}/info
- /rotor/station/genre:{genre}/tracks
The following fields are now optional: Account[region, passport_phones], Status[cache_limit, subeditor, subeditor_level, plus], Subscription[auto_renewable, can_start_trial, mcdonalds]
Added new fields: Subscription.end, Status[skips_per_hour, station_exists, premium_region], Track..preview_duration_ms
Fixed downloading the cover of the track
The following methods are wrapped:
- /genres
- /feed/wizard/is-passed
Changed getting playlists to another post request with multiple choice and tracks inside
Playlist now parse tracks :)
Keys that start with a digit now with a lower underscore...
The following method are wrapped:
- /landing3
Added the ability to download covers
The following field are optional: Playlist.tags
Now, when parsing json, the "client" key is replaced with "client_"
The following methods are wrapped:
- /search
- /search/suggest
The following classes received optional fields instead of required ones: Album, Artist, Playlist, Track
Added "params" arg to the GET request
Code refactoring
The following method are wrapped: /account/consume-promo-code
Added error receiver
The following fields are optional: Ratings.day, InvocationInfo.exec_duration_millis, Account.registered_at
Request now accepts client object, not token
The following methods are wrapped:
- albums;
- playlists/list;
- users/{user_id}/playlists/list;
- tracks;
- users/{user_id}/likes/tracks.
Added property to get full track ID
Cover received more optional fields
Ability to pass arguments to the request
Removed unnecessary type conversions
Added optional fields to Product object
The following methods are wrapped: settings, permission-alerts, account/experiments
Fixed receiving optional parameters during deserialization