Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-ytmusicapi for openSUSE:Factory checked in at 2024-08-28 21:31:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-ytmusicapi (Old) and /work/SRC/openSUSE:Factory/.python-ytmusicapi.new.2698 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-ytmusicapi" Wed Aug 28 21:31:47 2024 rev:3 rq:1196408 version:1.8.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-ytmusicapi/python-ytmusicapi.changes 2024-08-08 10:58:41.472342384 +0200 +++ /work/SRC/openSUSE:Factory/.python-ytmusicapi.new.2698/python-ytmusicapi.changes 2024-08-28 21:32:07.520345844 +0200 @@ -1,0 +2,8 @@ +Wed Aug 28 07:14:54 UTC 2024 - Christophe Marin <christo...@krop.fr> + +- Update to 1.8.1 + * search: fix playlistId on album results + * get_library_upload_*: fix 'v1.8.0 makes no songs to be found' + * get_playlist: small additions to documentation + +------------------------------------------------------------------- Old: ---- ytmusicapi-1.8.0.tar.gz New: ---- ytmusicapi-1.8.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-ytmusicapi.spec ++++++ --- /var/tmp/diff_new_pack.zvKKQ6/_old 2024-08-28 21:32:09.748438633 +0200 +++ /var/tmp/diff_new_pack.zvKKQ6/_new 2024-08-28 21:32:09.748438633 +0200 @@ -18,7 +18,7 @@ %{?sle15_python_module_pythons} Name: python-ytmusicapi -Version: 1.8.0 +Version: 1.8.1 Release: 0 Summary: Unofficial API for YouTube Music License: MIT ++++++ ytmusicapi-1.8.0.tar.gz -> ytmusicapi-1.8.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/PKG-INFO new/ytmusicapi-1.8.1/PKG-INFO --- old/ytmusicapi-1.8.0/PKG-INFO 2024-07-24 19:43:38.095627000 +0200 +++ new/ytmusicapi-1.8.1/PKG-INFO 2024-08-24 20:50:36.361257600 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: ytmusicapi -Version: 1.8.0 +Version: 1.8.1 Summary: Unofficial API for YouTube Music Author-email: sigma67 <ytmusic...@gmail.com> License: MIT License diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/ytmusicapi/mixins/playlists.py new/ytmusicapi-1.8.1/ytmusicapi/mixins/playlists.py --- old/ytmusicapi-1.8.0/ytmusicapi/mixins/playlists.py 2024-07-24 19:43:33.000000000 +0200 +++ new/ytmusicapi-1.8.1/ytmusicapi/mixins/playlists.py 2024-08-24 20:50:32.000000000 +0200 @@ -87,6 +87,8 @@ "id": "MPREb_PxmzvDuqOnC" }, "duration": "2:58", + "duration_seconds": 178, + "setVideoId": "748EE8..." "likeStatus": "INDIFFERENT", "thumbnails": [...], "isAvailable": True, @@ -276,7 +278,8 @@ :param title: Optional. New title for the playlist :param description: Optional. New description for the playlist :param privacyStatus: Optional. New privacy status for the playlist - :param moveItem: Optional. Move one item before another. Items are specified by setVideoId, see :py:func:`get_playlist` + :param moveItem: Optional. Move one item before another. Items are specified by setVideoId, which is the + unique id of this playlist item. See :py:func:`get_playlist` :param addPlaylistId: Optional. Id of another playlist to add to this playlist :param addToTop: Optional. Change the state of this playlist to add items to the top of the playlist (if True) or the bottom of the playlist (if False - this is also the default of a new playlist). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/ytmusicapi/parsers/library.py new/ytmusicapi-1.8.1/ytmusicapi/parsers/library.py --- old/ytmusicapi-1.8.0/ytmusicapi/parsers/library.py 2024-07-24 19:43:33.000000000 +0200 +++ new/ytmusicapi-1.8.1/ytmusicapi/parsers/library.py 2024-08-24 20:50:32.000000000 +0200 @@ -121,8 +121,11 @@ """ section = nav(response, SINGLE_COLUMN_TAB + SECTION_LIST, True) contents = None - if section is None: # empty library - contents = nav(response, SINGLE_COLUMN + TAB_2_CONTENT + SECTION_LIST_ITEM + renderer, True) + if section is None: # empty library or uploads + # covers the case of non-premium subscribers - no downloads tab + num_tabs = len(nav(response, [*SINGLE_COLUMN, "tabs"])) + LIBRARY_TAB = TAB_1_CONTENT if num_tabs < 3 else TAB_2_CONTENT + contents = nav(response, SINGLE_COLUMN + LIBRARY_TAB + SECTION_LIST_ITEM + renderer, True) else: results = find_object_by_key(section, "itemSectionRenderer") if results is None: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/ytmusicapi/parsers/podcasts.py new/ytmusicapi-1.8.1/ytmusicapi/parsers/podcasts.py --- old/ytmusicapi-1.8.0/ytmusicapi/parsers/podcasts.py 2024-07-24 19:43:33.000000000 +0200 +++ new/ytmusicapi-1.8.1/ytmusicapi/parsers/podcasts.py 2024-08-24 20:50:32.000000000 +0200 @@ -83,12 +83,10 @@ def parse_episode_header(header: dict) -> dict: metadata = parse_base_header(header) - metadata["date"] = nav(header, [*SUBTITLE2]) - metadata["duration"] = nav(header, [*SUBTITLE3], True) - if not metadata["duration"]: # progress started - progress_renderer = nav(header, ["progress", *PROGRESS_RENDERER]) - metadata["duration"] = nav(progress_renderer, DURATION_TEXT, True) - metadata["progressPercentage"] = nav(progress_renderer, ["playbackProgressPercentage"]) + metadata["date"] = nav(header, [*SUBTITLE]) + progress_renderer = nav(header, ["progress", *PROGRESS_RENDERER]) + metadata["duration"] = nav(progress_renderer, DURATION_TEXT, True) + metadata["progressPercentage"] = nav(progress_renderer, ["playbackProgressPercentage"]) metadata["saved"] = nav(header, ["buttons", 0, *TOGGLED_BUTTON], True) or False metadata["playlistId"] = None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/ytmusicapi/parsers/search.py new/ytmusicapi-1.8.1/ytmusicapi/parsers/search.py --- old/ytmusicapi-1.8.0/ytmusicapi/parsers/search.py 2024-07-24 19:43:33.000000000 +0200 +++ new/ytmusicapi-1.8.1/ytmusicapi/parsers/search.py 2024-08-24 20:50:32.000000000 +0200 @@ -94,6 +94,7 @@ elif result_type == "album": search_result["type"] = get_item_text(data, 1) + search_result["playlistId"] = nav(data, [*PLAY_BUTTON, "playNavigationEndpoint", *WATCH_PID], True) elif result_type == "playlist": flex_item = get_flex_column_item(data, 1)["text"]["runs"] @@ -163,13 +164,6 @@ if result_type in ["song", "album"]: search_result["isExplicit"] = nav(data, BADGE_LABEL, True) is not None - if result_type in ["album"]: - search_result["playlistId"] = nav( - data, - [*PLAY_BUTTON, "playNavigationEndpoint", "watchEndpoint", "playlistId"], - True, - ) - if result_type in ["episode"]: flex_item = get_flex_column_item(data, 1) has_date = int(len(nav(flex_item, TEXT_RUNS)) > 1) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ytmusicapi-1.8.0/ytmusicapi.egg-info/PKG-INFO new/ytmusicapi-1.8.1/ytmusicapi.egg-info/PKG-INFO --- old/ytmusicapi-1.8.0/ytmusicapi.egg-info/PKG-INFO 2024-07-24 19:43:38.000000000 +0200 +++ new/ytmusicapi-1.8.1/ytmusicapi.egg-info/PKG-INFO 2024-08-24 20:50:36.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: ytmusicapi -Version: 1.8.0 +Version: 1.8.1 Summary: Unofficial API for YouTube Music Author-email: sigma67 <ytmusic...@gmail.com> License: MIT License