From 709c5ebaa81d816d3788d265089e3c252b49a8bc Mon Sep 17 00:00:00 2001 From: Kur01234 Date: Tue, 7 May 2024 12:34:24 +0200 Subject: [PATCH] Correct duplicate values --- music_kraken/objects/metadata.py | 10 +++++++--- pyproject.toml | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/music_kraken/objects/metadata.py b/music_kraken/objects/metadata.py index 69fff8d..dfda274 100644 --- a/music_kraken/objects/metadata.py +++ b/music_kraken/objects/metadata.py @@ -355,7 +355,12 @@ class Metadata: return None list_data = self.id3_dict[field] - + #correct duplications + correct_list_data = list() + for data in list_data: + if data not in correct_list_data: + correct_list_data.append(data) + list_data = correct_list_data # convert for example the time objects to timestamps for i, element in enumerate(list_data): # for performance’s sake I don't do other checks if it is already the right type @@ -368,7 +373,7 @@ class Metadata: if type(element) == ID3Timestamp: list_data[i] = element.timestamp continue - + """ Version 2.4 of the specification prescribes that all text fields (the fields that start with a T, except for TXXX) can contain multiple values separated by a null character. Thus if above conditions are met, I concatenate the list, @@ -395,6 +400,5 @@ class Metadata: """ # set the tagging timestamp to the current time self.__setitem__(Mapping.TAGGING_TIME, [ID3Timestamp.now()]) - for field in self.id3_dict: yield self.get_mutagen_object(field) diff --git a/pyproject.toml b/pyproject.toml index 9c8232b..62598b1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -69,7 +69,7 @@ dependencies = [ "toml~=0.10.2", "typing_extensions~=4.7.1", - "python-sponsorblock~=0.0.0", + "python-sponsorblock~=0.1.dev1", "youtube_dl", ] dynamic = [