Releases: sigma67/ytmusicapi
Releases · sigma67/ytmusicapi
v1.11.0 Release Candidate 1
This is a release candidate to gather feedback for this release. Please comment in the associated discussion to leave feedback.
This release will not be installed automatically as the latest release, you need to explicitly install by specifying 1.11.0rc1
.
✨ Features
- dropped Python 3.9 support
- added
py.typed
- enabled mypy strict typing
New Contributors
- @katia-sentry made their first contribution in #762
Full Changelog: 1.10.3...1.11.0rc1
v1.10.3
🐞 Fixes
get_charts
: fix #751:parse_video
returns always a video ID orNone
by @borsattoz in #752get_artist
: Fix singles being renamed to "Singles & EPs" by @fabi321 in #755search
: fix #758 missing views key for "songs" filteredsearch
by @sigma67 in #759- typo: missing parentheses in oauth.rst by @FireTime in #756
New Contributors
- @borsattoz made their first contribution in #752
- @FireTime made their first contribution in #756
Full Changelog: 1.10.2...1.10.3
v1.10.2
🐞 Fixes
- Fix docs build by @antonio-rojas in #737
- cache visitor ID on first use by @sgvictorino in #738
- fix #743: get_album() now returns None for 'audioPlaylistId' by @sigma67 in #744
New Contributors
- @antonio-rojas made their first contribution in #737
Full Changelog: 1.10.1...1.10.2
v1.10.1
🐞 Fixes
- Fixed an issue with
get_playlist
and related endpoints where no more than 100 items would be returned withlimit
set to a value>100
. This issue was caused by a server-side update and may affect other endpoints in the future, if Google updates them.
v1.10.0
What's Changed
✨ Features
get_playlist
: support audio playlists by @sgvictorino in #696- improved ease of use for
OAuthCredentials
: now possible tofrom ytmusicapi import OAuthCredentials
🐞 Fixes
- fix #713: get_artist radioId and shuffleId missing by @sigma67 in #714
- fix #721 by @sigma67 in #725: fixed usage of string as
YTMusic(auth="")
argument (File name too long error on ytmusicapi authentication because headers are passed to new Path()) - fix #720 by @sigma67 in #726: Missing 'OAuthCredentials' for YTMusic constructor
- improved OAuth documentation, raise when oauth_credentials are missing
- removed option to disable session usage
- removed non-functional OAUTH_DEFAULT AuthType
- improved readability of ytmusic.py/YTMusicBase
Full Changelog: 1.9.1...1.10.0
v1.9.1
What's Changed
- fix(setup): Use resolve() before invoking as_uri() by @apastel in #700
- search: exclude "Single"/"EP" text from album artist list by @sgvictorino in #698
add_history_item
: update doc and check for authentication by @sigma67 in #704- doc: restructure reference by @sigma67 in #704
Full Changelog: 1.9.0...1.9.1
v1.9.0
What's Changed
many new contributors and important fixes in this update.
✨ Features
- updated OAuth setup CLI implementation to require client ID and secret via YouTube Data API. Please check the updated documentation for usage and instructions to create the credentials.
- added optional parameters for OAuth client ID and secret to setup by @fischcode in #688
- remove_search_suggestions: added new function to remove search suggestion by @comarquet in #678
- added option to
get_lyrics
to retrieve timestamped lyrics instead by @heinrich26 in #693 - added thumbnail to
get_podcast
get_episode
by @sigma67 in #695
🐞 Fixes
- fixed duration parsing for very long videos by @abhishekmj303 in #661
- fixed get_history crash due to server-side update by @luisignaciocc in #689 and @sigma67 in #691
- chore: Update pdm.lock by @github-actions in #636
- fix #675 by @sigma67 in #692
- get_playlist: join multiple title runs by @sgvictorino in #667
Chores
- Docstring cleanup by @heinrich26 in #665
- update oauth docs and request interactive input instead of aborting by @sigma67 in #694
New Contributors
- @abhishekmj303 made their first contribution in #661
- @luisignaciocc made their first contribution in #689
- @comarquet made their first contribution in #678
- @sgvictorino made their first contribution in #667
- @heinrich26 made their first contribution in #665
Full Changelog: 1.8.2...1.9.0
v1.8.2
What's Changed
- fix(playlists): handle missing regex group in trackCount by @RealCalumPlays in #651
- fix #642: create_playlist: raise error when invalid characters are pa… by @sigma67 in #652
- upload_song: add error when file exceeds limit of 300MB by @sigma67 in #653
- refactor: use pathlib by @sigma67 in #654
- search: fix missing artists when filtering songs/videos by @sigma67 in #655
- search: fix missing playlistId for album results while authenticated by @sigma67 in #659
- fix #656: attempt to find runs in subtitle if not in title by @gotofritz in #657
New Contributors
- @RealCalumPlays made their first contribution in #651
- @gotofritz made their first contribution in #657
Full Changelog: 1.8.1...1.8.2
v1.8.1
What's Changed
search
: fix playlistId on album results by @sigma67 in #635get_library_upload_*
: fix #640 by @sigma67 in #645get_playlist
: small additions to documentation by @indierodo in #637
New Contributors
- @indierodo made their first contribution in #637
Full Changelog: 1.8.0...1.8.1
v1.8.0
⚡ Breaking Changes
- dropped support for Python 3.8 as announced 3 months ago: #593
✨ Features
- introduce exception classes by @sigma67 in #620
get_user_videos
to get full list of user videos based on result ofget_user
by @sigma67 in #632
🐞 Fixes
get_playlist
: fix title for podcast episodes (#622) by @czifumasa in #623, fix artists for unnoficial videos (#627) by @czifumasa in #630get_playlist
: re-add thumbnails by @sigma67 in #626get_podcast
: fix edge case when first subtitle is missing*library uploads
: fix broken index after downloads rollout
Misc
- coverage: remove code for old playlist format by @sigma67 in #619
- chore: Update pdm.lock by @github-actions in #614
Full Changelog: 1.7.5...1.8.0