From 402622f4271dd26447679c29eff866568cb0a644 Mon Sep 17 00:00:00 2001 From: Kevin Hester Date: Tue, 25 Jun 2024 11:25:07 -0700 Subject: [PATCH] fix type warnings --- meshtastic/powermon/ppk2.py | 4 ++-- meshtastic/slog/arrow.py | 2 +- meshtastic/slog/slog.py | 17 +++++++++-------- poetry.lock | 2 +- pyproject.toml | 2 +- 5 files changed, 14 insertions(+), 13 deletions(-) diff --git a/meshtastic/powermon/ppk2.py b/meshtastic/powermon/ppk2.py index 3f8c67f..bec4c1d 100644 --- a/meshtastic/powermon/ppk2.py +++ b/meshtastic/powermon/ppk2.py @@ -1,9 +1,9 @@ -"""code logging power consumption of meshtastic devices.""" +"""Classes for logging power consumption of meshtastic devices.""" import logging from typing import Optional -from ppk2_api import ppk2_api +from ppk2_api import ppk2_api # type: ignore[import-untyped] from .power_supply import PowerError, PowerSupply diff --git a/meshtastic/slog/arrow.py b/meshtastic/slog/arrow.py index 71703c1..225d3ce 100644 --- a/meshtastic/slog/arrow.py +++ b/meshtastic/slog/arrow.py @@ -13,7 +13,7 @@ class ArrowWriter: file_name (str): The name of the file to write to. """ - self.sink = pa.OSFile(file_name, "wb") + self.sink = pa.OSFile(file_name, "wb") # type: ignore self.new_rows: list[dict] = [] self.schema: pa.Schema | None = None # haven't yet learned the schema self.writer: pa.RecordBatchFileWriter | None = None diff --git a/meshtastic/slog/slog.py b/meshtastic/slog/slog.py index 1eac5e7..0dd0690 100644 --- a/meshtastic/slog/slog.py +++ b/meshtastic/slog/slog.py @@ -10,7 +10,7 @@ from dataclasses import dataclass from datetime import datetime from typing import Optional -import parse +import parse # type: ignore[import-untyped] import platformdirs from pubsub import pub # type: ignore[import-untyped] @@ -25,7 +25,7 @@ class LogDef: """Log definition.""" code: str # i.e. PM or B or whatever... see meshtastic slog documentation - format: str # A format string that can be used to parse the arguments + format: parse.Parser # A format string that can be used to parse the arguments def __init__(self, code: str, fmt: str) -> None: """Initialize the LogDef object. @@ -138,7 +138,7 @@ class LogSet: self, client: MeshInterface, dir_name: Optional[str] = None, - power_meter: PowerMeter = None, + power_meter: Optional[PowerMeter] = None, ) -> None: """Initialize the PowerMonClient object. @@ -156,11 +156,12 @@ class LogSet: logging.info(f"Writing slogs to {dir_name}") - self.slog_logger = StructuredLogger(client, self.dir_name) - if power_meter: - self.power_logger = PowerLogger(power_meter, f"{self.dir_name}/power.arrow") - else: - self.power_logger = None + self.slog_logger: Optional[StructuredLogger] = StructuredLogger(client, self.dir_name) + self.power_logger: Optional[PowerLogger] = ( + None + if not power_meter + else PowerLogger(power_meter, f"{self.dir_name}/power.arrow") + ) # Store a lambda so we can find it again to unregister self.atexit_handler = lambda: self.close() # pylint: disable=unnecessary-lambda diff --git a/poetry.lock b/poetry.lock index b872b40..af2ca49 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1746,4 +1746,4 @@ tunnel = [] [metadata] lock-version = "2.0" python-versions = "^3.9,<3.13" -content-hash = "b42cdca565b7cbe0ba16405328144b06cd8394d64cb41dac4def2c68d1f1e4b4" +content-hash = "ad12848e1311886733ea3205795e49e405c2012e9dcff2df6e926ef1cd1dd4b0" diff --git a/pyproject.toml b/pyproject.toml index ca9070f..e0b99b4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,7 +26,6 @@ riden = { git = "https://github.com/geeksville/riden.git#1.2.1" } parse = "^1.20.2" ppk2-api = "^0.9.2" pyarrow = "^16.1.0" -pyarrow-stubs = "^10.0.1.7" platformdirs = "^4.2.2" [tool.poetry.group.dev.dependencies] @@ -45,6 +44,7 @@ types-tabulate = "^0.9.0.20240106" types-requests = "^2.31.0.20240406" types-setuptools = "^69.5.0.20240423" types-pyyaml = "^6.0.12.20240311" +pyarrow-stubs = "^10.0.1.7" [tool.poetry.extras] tunnel = ["pytap2"]