From b8e685b13393efe48acac0f488fe1f9caabd57d3 Mon Sep 17 00:00:00 2001 From: Rafael Moraes <50295204+glomatico@users.noreply.github.com> Date: Thu, 26 Feb 2026 18:41:08 -0300 Subject: [PATCH] Add podcast template options to CLI Expose podcast_folder_template and podcast_file_template as CLI options in CliConfig (defaulting to base_downloader_sig values) and pass them through in main when constructing the downloader. This enables custom folder/file templates for podcasts. --- votify/cli/cli.py | 2 ++ votify/cli/cli_config.py | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/votify/cli/cli.py b/votify/cli/cli.py index 0db9927..99ed73c 100644 --- a/votify/cli/cli.py +++ b/votify/cli/cli.py @@ -112,9 +112,11 @@ async def main(config: CliConfig): shaka_packager_path=config.shaka_packager_path, album_folder_template=config.album_folder_template, compilation_folder_template=config.compilation_folder_template, + podcast_folder_template=config.podcast_folder_template, no_album_folder_template=config.no_album_folder_template, single_disc_file_template=config.single_disc_file_template, multi_disc_file_template=config.multi_disc_file_template, + podcast_file_template=config.podcast_file_template, no_album_file_template=config.no_album_file_template, playlist_file_template=config.playlist_file_template, date_tag_template=config.date_tag_template, diff --git a/votify/cli/cli_config.py b/votify/cli/cli_config.py index b3d9f9c..2384e2a 100644 --- a/votify/cli/cli_config.py +++ b/votify/cli/cli_config.py @@ -302,6 +302,14 @@ class CliConfig: ].default, ), ] + podcast_folder_template: Annotated[ + str, + option( + "--podcast-folder-template", + help="Podcast folder template", + default=base_downloader_sig.parameters["podcast_folder_template"].default, + ), + ] no_album_folder_template: Annotated[ str, option( @@ -326,6 +334,14 @@ class CliConfig: default=base_downloader_sig.parameters["multi_disc_file_template"].default, ), ] + podcast_file_template: Annotated[ + str, + option( + "--podcast-file-template", + help="Podcast file template", + default=base_downloader_sig.parameters["podcast_file_template"].default, + ), + ] no_album_file_template: Annotated[ str, option(