From 2b8ea5399a6471cb5fbed7ab1f86f225a9cb229e Mon Sep 17 00:00:00 2001 From: Jakob Moser Date: Sat, 24 May 2025 14:44:45 +0200 Subject: [PATCH] Make API more narrow --- karaokatalog/deduplicate/__main__.py | 2 +- karaokatalog/deduplicate/find_duplicates.py | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/karaokatalog/deduplicate/__main__.py b/karaokatalog/deduplicate/__main__.py index de7cd79..c887d42 100644 --- a/karaokatalog/deduplicate/__main__.py +++ b/karaokatalog/deduplicate/__main__.py @@ -39,7 +39,7 @@ if __name__ == "__main__": logging.info("Library loaded") logging.info("Finding duplicates (songs with identical title and artist)") - duplicates = find_duplicates(library) + duplicates = find_duplicates(library.songs) logging.info("Duplicates found") logging.info("Finding exact duplicates (files are 100% identical)") diff --git a/karaokatalog/deduplicate/find_duplicates.py b/karaokatalog/deduplicate/find_duplicates.py index db16219..70dad7d 100644 --- a/karaokatalog/deduplicate/find_duplicates.py +++ b/karaokatalog/deduplicate/find_duplicates.py @@ -3,13 +3,12 @@ from collections.abc import Mapping, Sequence from tqdm import tqdm -from karaokatalog.Library import Library from karaokatalog.Song import Artist, Song, Title type TitleAndArtist = tuple[Title, Artist] -def find_duplicates(l: Library) -> Mapping[TitleAndArtist, Sequence[Song]]: +def find_duplicates(songs: Sequence[Song]) -> Mapping[TitleAndArtist, Sequence[Song]]: """ Find all song duplicates, i.e., all songs with the same title and same artist. @@ -24,7 +23,7 @@ def find_duplicates(l: Library) -> Mapping[TitleAndArtist, Sequence[Song]]: list ) - for song in tqdm(l.songs, unit=" songs"): + for song in tqdm(songs, unit=" songs"): songs_by_title_and_artist[(song.title, song.artist)].append(song) return {