Releases: tamland/python-tidal
Releases · tamland/python-tidal
v0.8.1
What's Changed
- Typings: get_urls() returned value shall be
[str]
. by @exislow - Remove MQA legacy code leftovers, HIRES naming inconsistency @exislow
- Updated unit test(s) @tehkillerbee
Full Changelog: v0.8.0...v0.8.1
v0.8.0
What's Changed
BREAKING:
- MQA, Sony 360 audio no longer supported July 24th 2024; removed references to these formats. - @tehkillerbee
- Fix naming of getters to align with python naming convention and avoid confusion (Fixes #255) - @tehkillerbee
- Rename print function to fn_print in login_session_file. - @GioF71
Bugfixes:
- Bugfix: Logical loop of is_encrypted / encryption_key - @TooYoungTooSimp
- Bugfix: Recent TIDAL changes resulted in missing Mix not causing a ObjectNotFound exception. - @tehkillerbee
- Bugfix: Ensure manifest.codecs always uses a Codec type for both MPD and BTS. - @tehkillerbee
- Bugfix: Use correct internal type int for relevant IDs (Fixes #260) - @tehkillerbee
- Bugfix: Fix linting for audio_modes. Update tests (Fixes #261) - @tehkillerbee
- Bugfix: Always use last element in segment timeline. (Fixes #273) - @tehkillerbee
Features:
- Feature: Add support for playlist merging. - @tehkillerbee
- Added trn to playlist object for convenience. - @tehkillerbee
- Set limits from argument in all relevant methods. - @tehkillerbee
- Feature: Use v2 endpoint for playlist creation. - @tehkillerbee
- Feature: Add support for playlist folders (#181) - @tehkillerbee
- Feature: Add track to user playlist, user tracks from ISRC (#96) - @tehkillerbee
- Feature: Add optional fn_print to Session::login_session_file - @GioF71
- Feature: Add support for moving playlist items (#116) - @tehkillerbee
- Feature: Allow adding items multiple times to the same playlist - @tehkillerbee
- Feature: Add support for adding items to a playlists at a specific position (#116) - @tehkillerbee
- Feature: Set UserPlaylist public/private. Add method for getting public user playlists. - @tehkillerbee
- Feature: Remove multiple items from UserPlaylist. (Fixes #259) - @tehkillerbee
- Remove deprecated username/pass login method (Fixes #279) - @tehkillerbee
- Populate the track/items.album attributes from the parent Album object. Updated tests (Fixes #281) - @tehkillerbee
- Added clarifications to video_url method. Check video URLs for all available video qualities (Fixes #257) - @tehkillerbee
- Use enum to specify default audio / video quality - @tehkillerbee
- Feat.: Provide "Share Link", "Listen link" as an attribute to album/artist/media/playlist/. Update relevant tests (Fixes #266) @tehkillerbee
- Add method to get detailed request error response if an error occurred during request. - @tehkillerbee
- Feat.: Add support to get tracks by ISRC. - @tehkillerbee, @M4TH1EU
- Feat.: Add support to get albums by Barcode ID (UPC). - @tehkillerbee, @M4TH1EU
- Feat.: Add support for a custom base url in
request()
andbasic_request()
to use the new openapi. - @M4TH1EU
Tests:
- Allow switching authentication method oauth/pkce for tests. Default: oauth - @tehkillerbee
- Tests: Added additional playlist, folder tests. - @tehkillerbee
- Tests: Fix all tests that previously failed. - @tehkillerbee
- Added additional tests to verify stream formats (Relates to #252) - @tehkillerbee
- Tests: Added track stream tests (BTS, MPD) - @tehkillerbee
- Tests: Add tests tests for ISRC, barcode methods and cleanup exception handling. - @tehkillerbee
Full Changelog: v0.7.6...v0.8.0
v0.7.6
What's Changed
- Fix: Set token type correctly for OAuth/PKCE authentication - @tehkillerbee in #247
- Revert to using enums with str support for relevant classes - @tehkillerbee, @exislow in #248
- Removed return types from method names for consistency, added deprecation warnings - @tehkillerbee, @exislow in #249
- chore(deps): bump idna from 3.6 to 3.7
- chore(deps-dev): bump pillow from 10.2.0 to 10.3.0
- chore(deps-dev): bump black from 23.12.1 to 24.3.0
Full Changelog: v0.7.5...v0.7.6
v0.7.5
- Fix: Use wide image when no square picture is available @tehkillerbee
- Feat.: Added HiRes page @tehkillerbee
- Feat.: Handle missing Stream fields gracefully. Get stream audio resolution (bit depth, rate) as tuple. @tehkillerbee
- Feat.: Added misc helper functions for audio mode, get available audio mode for media. @tehkillerbee
- Feat.: Added misc. fields to album. Get audio resolution for album + individual tracks. @tehkillerbee
- Feat.: Added MPEG-DASH to HLS stream parsing, Added MPEG-DASH stream example. @tehkillerbee
- Set default artist IMG if missing. Use default album IMG URI instead of direct URL. @tehkillerbee
- Bugfix: Make sure is_pkce state is set when pkce_login_url() is used directly. @tehkillerbee
- Tests: Added misc tests for ObjectNotFound @tehkillerbee
- Error handling: Handle TooManyRequests exceptions gracefully. @tehkillerbee
- Error handling: Handle ObjectNotFound exceptions gracefully. @tehkillerbee
- Tests: Fix misc tests broken by Tidal. @tehkillerbee
- Bugfix: Fix pkce token refresh. @tehkillerbee
- Bugfix: Load/store PKCE state from file using wrong client_id. @tehkillerbee
- Feat.: Improved error handling (Missing albums, missing lyrics, missing track url etc.). @tehkillerbee
- Bugfix: Page Recursion into Categories. @quodrum-glas
Many thanks to @GioF71 for feedback and testing during v0.7.5 during development.
New Contributors
- @quodrum-glas made their first contribution in #236
Full Changelog: v0.7.4...v0.7.5
v0.7.4
- Load/store OAuth/PKCE session to file - @tehkillerbee
- Add PKCE login for HiRes - @exislow, @arnesongit
- Include request response on error. Print as warning - @tehkillerbee
- Fix tests - @tehkillerbee
- Bugfixes (artist.get_similar) - @tehkillerbee
- Favourite mixes refactoring - @jozefKruszynski
- Add typings for Playlist, UserPlaylist, Pages - @arusahni
- Update favorites.tracks to accept order and orderDirection params - @Jimmyscene
v0.7.3
- Various test, poetry bugfixes - 2e0byo
- Add "for_you" page - tehkillerbee
- Add option to limit track radio length - jozefKruszynski
- Official support for HI_RES FLAC quality - tehkillerbee
- Add helper functions to set audio/video quality for current session - tehkillerbee
- Added missing WELCOME_MIX MixType - tehkillerbee
- Various image bugfixes - tehkillerbee
- Add typings for Artists and Users - arusahni
- Add media metadata - jozefKruszynski
- Downgrade minimum required version of requests JoshMock
v0.7.2
- Improved tests 2e0byo
- Add type to album object jozefKruszynski
- Add mix images and tests jozefKruszynski
- Add mypy and fix immediate typing errors arusahni
- New attribute to media.Track() class: 'full_name' WilliamGuisan
- Fix Track.stream() method ssnailed
- Fixed key error for gender when parsing user json mkaufhol
- Drop (almost) all user data we don't use. 2e0byo
- Add typing for media, genres, mixes, and albums arusahni
- Replace TypedDict and NamedTuple with dataclasses arusahni
- Fix circular Imports and Typing PretzelVector
- Handle JSONDecodeError correctly, various bugfixes.
v0.7.1
v0.7.1
- Quick fix for "got key error 'picture'" error. - BlackLight
- Bring back Radio support - bjesus
- Added function for multiple deletions at once bloedboemmel
- Use UTC instead of local time for expiry_time lutzbuerkle
v0.7.0
- (BREAKING!) Removed obsolete parameter session_id from load_oauth_session - @lutzbuerkle
- (BREAKING!) Drop support for python2.7 - @morguldir
- (BREAKING!) Change the architecture of the library to allow for using more files, see the migration guide - @morguldir
- Add support for tidal pages (e.g. home, videos and explore in the web ui) - @morguldir
- Add support for parsing mixes and retrieving the media - @morguldir
- Get rid of the old genre and mood support, you can now find them in the pages instead - @morguldir
- Update almost all of the json parsing and classes to include more fields - @morguldir
- Add complete docstrings to many of the functions - @morguldir
- Tests now cover almost all of the code - @morguldir
- Pylint scores are now much higher - @morguldir
- Add option to retrieve master quality tracks (I can't test this, but I believe it works as of writing) - @morguldir
- Add a few documentation pages explaining the basics - @morguldir
- Add support for modifying playlists - @morguldir
- Add a parameter to always fetch the track album if it's not provided - @divadsn
- Add function to retrieve the year and date from either the release data or the stream start date - @divadsn
- Improve the performance of the internal get_items() function by using extend - @blacklight
- Properly deal with the api returning non-json results - @blacklight
- Add support for retrieving the reviews of an album - @retired-guy