From 5cdf482ef93fef82d16b75bb7b93696e85b6b772 Mon Sep 17 00:00:00 2001 From: Robert Honz Date: Thu, 13 Nov 2025 08:33:59 +0100 Subject: [PATCH] =?UTF-8?q?refactor(downloader):=20=F0=9F=94=A7=20reorgani?= =?UTF-8?q?ze=20TrackStreamInfo=20class=20and=20imports?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Moved `TrackStreamInfo` class definition from `download.py` to `downloader.py`. * Removed redundant `dataclass` import from `download.py`. * Updated import statements to maintain clarity and organization. --- tidal_dl_ng/download.py | 13 +------------ tidal_dl_ng/model/downloader.py | 11 +++++++++++ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tidal_dl_ng/download.py b/tidal_dl_ng/download.py index e07f463..33a23aa 100644 --- a/tidal_dl_ng/download.py +++ b/tidal_dl_ng/download.py @@ -16,7 +16,6 @@ import tempfile import time from collections.abc import Callable from concurrent import futures -from dataclasses import dataclass from threading import Event from uuid import uuid4 @@ -72,20 +71,10 @@ from tidal_dl_ng.helper.tidal import ( name_builder_title, ) from tidal_dl_ng.metadata import Metadata -from tidal_dl_ng.model.downloader import DownloadSegmentResult +from tidal_dl_ng.model.downloader import DownloadSegmentResult, TrackStreamInfo from tidal_dl_ng.model.gui_data import ProgressBars -@dataclass -class TrackStreamInfo: - """Container for track stream information.""" - - stream_manifest: StreamManifest | None - file_extension: str - requires_flac_extraction: bool - media_stream: Stream | None - - # TODO: Set appropriate client string and use it for video download. # https://github.com/globocom/m3u8#using-different-http-clients class RequestsClient: diff --git a/tidal_dl_ng/model/downloader.py b/tidal_dl_ng/model/downloader.py index 3f6151f..772f3ae 100644 --- a/tidal_dl_ng/model/downloader.py +++ b/tidal_dl_ng/model/downloader.py @@ -2,6 +2,7 @@ import pathlib from dataclasses import dataclass from requests import HTTPError +from tidalapi.media import Stream, StreamManifest @dataclass @@ -11,3 +12,13 @@ class DownloadSegmentResult: path_segment: pathlib.Path id_segment: int error: HTTPError | None = None + + +@dataclass +class TrackStreamInfo: + """Container for track stream information.""" + + stream_manifest: StreamManifest | None + file_extension: str + requires_flac_extraction: bool + media_stream: Stream | None