Youtube Subscription Implementation (WIP)

This commit is contained in:
BreadTube 2025-09-26 23:41:51 +09:00 committed by Corentin
commit b80e4f7745
6 changed files with 333 additions and 133 deletions

View file

@ -11,6 +11,7 @@ class Config:
bot_channel_init_retries: int = 3
bot_message_duration: float = 150.
request_timeout: float = 3.
unmanaged_categories: str = ''
youtube_channel_refresh_interval: float = 3600
youtube_channel_video_count: int = 10
@ -28,12 +29,12 @@ class Config:
if lines[0] != 'config':
raise RuntimeError('Cannot load config: first line is not "config"')
config_dict = {}
for line_number, line in enumerate(lines[1:]):
for line_number, line in enumerate(lines[1:], start=1):
key, value = line.split('=', maxsplit=1)
if key not in annotations:
raise RuntimeError(f'Invalid config: invalid key {key} at line {line_number + 1}')
raise RuntimeError(f'Invalid config: invalid key {key} at line {line_number}')
if key in config_dict:
raise RuntimeError(f'Invalid config: duplicated key {key} at line {line_number + 1}')
raise RuntimeError(f'Invalid config: duplicated key {key} at line {line_number}')
config_dict[key] = value
for key, value in config_dict.items():