From 4ada25a3fff82bff0fd3d0f45ea62d1fc86e7e70 Mon Sep 17 00:00:00 2001 From: jo Date: Fri, 9 Sep 2022 20:23:35 +0200 Subject: [PATCH] fix(playout): add types This reverts commit d6348d55752f946a4d3815773d7c7ef90310c00f. --- playout/libretime_playout/main.py | 10 +++++----- playout/libretime_playout/message_handler.py | 5 +++-- playout/libretime_playout/player/fetch.py | 7 ++++--- playout/libretime_playout/player/file.py | 3 ++- playout/libretime_playout/player/push.py | 5 +++-- playout/libretime_playout/player/queue.py | 3 ++- 6 files changed, 19 insertions(+), 14 deletions(-) diff --git a/playout/libretime_playout/main.py b/playout/libretime_playout/main.py index 9a8567c38..fcd6e8344 100644 --- a/playout/libretime_playout/main.py +++ b/playout/libretime_playout/main.py @@ -7,7 +7,7 @@ import time from datetime import datetime from pathlib import Path from queue import Queue -from typing import Optional +from typing import Any, Dict, Optional import click from libretime_api_client.v1 import ApiClient as LegacyClient @@ -85,14 +85,14 @@ def cli(log_level: str, log_filepath: Optional[Path], config_filepath: Optional[ if not LIQUIDSOAP_MIN_VERSION <= liq_version: raise Exception(f"Invalid liquidsoap version {liq_version}") - fetch_queue = Queue() - recorder_queue = Queue() - push_queue = Queue() + fetch_queue: Queue[Dict[str, Any]] = Queue() + recorder_queue: Queue[Dict[str, Any]] = Queue() + push_queue: Queue[Dict[str, Any]] = Queue() # This queue is shared between pypo-fetch and pypo-file, where pypo-file # is the consumer. Pypo-fetch will send every schedule it gets to pypo-file # and pypo will parse this schedule to determine which file has the highest # priority, and retrieve it. - file_queue = Queue() + file_queue: Queue[Dict[str, Any]] = Queue() pypo_liquidsoap = PypoLiquidsoap(liq_client) diff --git a/playout/libretime_playout/message_handler.py b/playout/libretime_playout/message_handler.py index 430b758ad..06f99a225 100644 --- a/playout/libretime_playout/message_handler.py +++ b/playout/libretime_playout/message_handler.py @@ -2,6 +2,7 @@ import json from queue import Queue as ThreadQueue from signal import SIGTERM, signal from time import sleep +from typing import Any, Dict # For RabbitMQ from kombu.connection import Connection @@ -75,8 +76,8 @@ class MessageListener: def __init__( self, config: Config, - fetch_queue: ThreadQueue, - recorder_queue: ThreadQueue, + fetch_queue: ThreadQueue[Dict[str, Any]], + recorder_queue: ThreadQueue[Dict[str, Any]], ) -> None: self.config = config diff --git a/playout/libretime_playout/player/fetch.py b/playout/libretime_playout/player/fetch.py index 121bc2259..112754155 100644 --- a/playout/libretime_playout/player/fetch.py +++ b/playout/libretime_playout/player/fetch.py @@ -7,6 +7,7 @@ from datetime import datetime from queue import Empty, Queue from subprocess import PIPE, Popen from threading import Thread, Timer +from typing import Any, Dict from libretime_api_client.v1 import ApiClient as LegacyClient from libretime_api_client.v2 import ApiClient @@ -27,9 +28,9 @@ class PypoFetch(Thread): def __init__( self, - fetch_queue: Queue, - push_queue: Queue, - file_queue: Queue, + fetch_queue: Queue[Dict[str, Any]], + push_queue: Queue[Dict[str, Any]], + file_queue: Queue[Dict[str, Any]], liq_client: LiquidsoapClient, pypo_liquidsoap: PypoLiquidsoap, config: Config, diff --git a/playout/libretime_playout/player/file.py b/playout/libretime_playout/player/file.py index 23cefd1e7..13c04786e 100644 --- a/playout/libretime_playout/player/file.py +++ b/playout/libretime_playout/player/file.py @@ -4,6 +4,7 @@ import stat import time from queue import Empty, Queue from threading import Thread +from typing import Any, Dict from libretime_api_client.v2 import ApiClient from loguru import logger @@ -16,7 +17,7 @@ class PypoFile(Thread): def __init__( self, - file_queue: Queue, + file_queue: Queue[Dict[str, Any]], api_client: ApiClient, ): Thread.__init__(self) diff --git a/playout/libretime_playout/player/push.py b/playout/libretime_playout/player/push.py index 535c457c8..c3935ca33 100644 --- a/playout/libretime_playout/player/push.py +++ b/playout/libretime_playout/player/push.py @@ -3,6 +3,7 @@ import time from datetime import datetime from queue import Queue from threading import Thread +from typing import Any, Dict from loguru import logger @@ -25,7 +26,7 @@ class PypoPush(Thread): def __init__( self, - push_queue: Queue, + push_queue: Queue[Dict[str, Any]], pypo_liquidsoap: PypoLiquidsoap, config: Config, ): @@ -38,7 +39,7 @@ class PypoPush(Thread): self.current_prebuffering_stream_id = None self.queue_id = 0 - self.future_scheduled_queue = Queue() + self.future_scheduled_queue: Queue[Dict[str, Any]] = Queue() self.pypo_liquidsoap = pypo_liquidsoap self.plq = PypoLiqQueue(self.future_scheduled_queue, self.pypo_liquidsoap) diff --git a/playout/libretime_playout/player/queue.py b/playout/libretime_playout/player/queue.py index 13e0735b0..aa026d527 100644 --- a/playout/libretime_playout/player/queue.py +++ b/playout/libretime_playout/player/queue.py @@ -2,6 +2,7 @@ from collections import deque from datetime import datetime from queue import Empty, Queue from threading import Thread +from typing import Any, Dict from loguru import logger @@ -15,7 +16,7 @@ class PypoLiqQueue(Thread): def __init__( self, - future_queue: Queue, + future_queue: Queue[Dict[str, Any]], pypo_liquidsoap: PypoLiquidsoap, ): Thread.__init__(self)