Skip to content

Commit

Permalink
More type hinting fixed.
Browse files Browse the repository at this point in the history
  • Loading branch information
BenediktBurger committed Oct 12, 2023
1 parent f50a399 commit 1aec32b
Show file tree
Hide file tree
Showing 12 changed files with 31 additions and 24 deletions.
2 changes: 1 addition & 1 deletion examples/pymeasure_actor.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

from pyleco.actors.actor import Actor
from pyleco.utils.publisher import Publisher
from pymeasure.instruments.ipgphotonics import YAR
from pymeasure.instruments.ipgphotonics import YAR # type:ignore[import-not-found]

log = logging.getLogger(__name__)
log.addHandler(logging.NullHandler())
Expand Down
4 changes: 1 addition & 3 deletions pyleco/actors/actor.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,11 @@
# THE SOFTWARE.
#

import time
from typing import Any, Callable, Optional, Union

import zmq

from ..utils.message_handler import BaseController, heartbeat_interval
from ..utils.events import Event, SimpleEvent
from ..utils.message_handler import BaseController
from ..utils.publisher import Publisher
from ..utils.timers import RepeatingTimer

Expand Down
4 changes: 2 additions & 2 deletions pyleco/coordinators/coordinator.py
Original file line number Diff line number Diff line change
Expand Up @@ -350,8 +350,8 @@ def pong(self) -> None:

@staticmethod
def set_log_level(level: str) -> None:
level = PythonLogLevels[level]
log.setLevel(level)
plevel = PythonLogLevels[level]
log.setLevel(plevel)

def shut_down(self) -> None:
self.sign_out_from_all_coordinators()
Expand Down
11 changes: 7 additions & 4 deletions pyleco/directors/data_logger_director.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,13 @@ def get_last_datapoint(self) -> dict[str, Any]:

def saveData(self) -> str:
"""Save the data and return the name of the file."""
tmo = self.communicator.timeout
self.communicator.timeout = 1000
name = self.call_method_rpc("saveData")
self.communicator.timeout = tmo
try:
tmo = self.communicator.timeout # type:ignore[attr-defined]
self.communicator.timeout = 1000 # type:ignore[attr-defined]
name = self.call_method_rpc("saveData")
self.communicator.timeout = tmo # type:ignore[attr-defined]
except AttributeError:
name = self.call_method_rpc("saveData")
return name

def stop_collecting(self) -> None:
Expand Down
5 changes: 3 additions & 2 deletions pyleco/management/data_logger.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class StrEnum(str, Enum): # type: ignore
from typing import Any, Callable, Optional

try:
import numpy as np # type: ignore
import numpy as np # type: ignore[import-not-found]
except ModuleNotFoundError:
def average(values: list[float | int] | tuple[float | int, ...]):
return sum(values) / len(values)
Expand Down Expand Up @@ -143,7 +143,8 @@ def shut_down(self) -> None:
def __del__(self) -> None:
self.stop_collecting()

def _listen_setup(self, start_data: Optional[dict[str, Any]] = None, **kwargs):
def _listen_setup(self, start_data: Optional[dict[str, Any]] = None, # type: ignore[override]
**kwargs):
poller = super()._listen_setup(**kwargs)
if start_data is not None:
self.start_collecting(**start_data)
Expand Down
7 changes: 4 additions & 3 deletions pyleco/management/data_logger_postgresql.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import datetime
from typing import Any

import psycopg2
import psycopg2 # type: ignore[import-untyped]

from .data_logger import DataLogger

Expand All @@ -48,6 +48,7 @@ def __init__(self, name: str,
if table is None:
raise ValueError("Table must not be empty.")
self.table = table
self.tries = 0
self.connect_database()

def make_data_point(self):
Expand Down Expand Up @@ -75,7 +76,7 @@ def write_database(self, data: dict[str, Any]):
if self.tries < 10:
self.tries += 1
else:
self.connectDatabase()
self.connect_database()
self.tries = 0
return # No database connection existing.
columns = "timestamp"
Expand All @@ -87,7 +88,7 @@ def write_database(self, data: dict[str, Any]):
cursor.execute(f"INSERT INTO {self.table} ({columns}) VALUES (%s{', %s' * length})",
(datetime.datetime.now(), *data.values()))
except (psycopg2.OperationalError, psycopg2.InterfaceError):
self.connectDatabase() # Connection lost, reconnect.
self.connect_database() # Connection lost, reconnect.
except Exception as exc:
log.exception("Database write error.", exc_info=exc)
database.rollback()
Expand Down
4 changes: 2 additions & 2 deletions pyleco/utils/extended_publisher.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@
import json
from typing import Any

import numpy as np
import pint
import numpy as np # type: ignore[import-not-found]
import pint # type: ignore[import-not-found]

from pyleco.utils.publisher import Publisher

Expand Down
6 changes: 5 additions & 1 deletion pyleco/utils/listener.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,12 @@ def close(self) -> None:
def name(self) -> str:
return self.message_handler.name

@name.setter
def name(self, value: str) -> None:
self.message_handler.name = value

@property
def namespace(self) -> str | None:
def namespace(self) -> str | None: # type: ignore[override] # only the handler sets namespace.
return self.message_handler.namespace

@property
Expand Down
4 changes: 2 additions & 2 deletions pyleco/utils/message_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -302,8 +302,8 @@ def handle_commands(self, msg: Message) -> None:

def set_log_level(self, level: str) -> None:
"""Set the log level."""
level = PythonLogLevels[level]
self.root_logger.setLevel(level)
plevel = PythonLogLevels[level]
self.root_logger.setLevel(plevel)

def shut_down(self) -> None:
self.stop_event.set()
Expand Down
4 changes: 2 additions & 2 deletions tests/acceptance_tests/test_proxy_server_live.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ class ModListener(Listener):
def __init__(self, name: str, host: str = "localhost", data_port: int = PROXY_SENDING_PORT,
**kwargs) -> None:
super().__init__(name=name, host=host, data_port=data_port, **kwargs)
self._data = []
self._data: list[dict] = []

def handle_subscription_data(self, data: dict) -> None:
self._data.append(data)
Expand All @@ -55,7 +55,7 @@ def publisher() -> Publisher:


@pytest.fixture(scope="module")
def listener(publisher) -> ModListener:
def listener(publisher):
context = start_proxy(offset=offset)
listener = ModListener(name="listener", data_port=port - 1 - 2 * offset)
listener.start_listen()
Expand Down
2 changes: 1 addition & 1 deletion tests/utils/test_listener.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ def __init__(self, received: list[Message] | None = None) -> None:
self._sent: list[Message] = []
self._received: list[Message] = received or []

def pipe_setup(self) -> None:
def pipe_setup(self, context=None) -> None: # type: ignore[override]
pass

def pipe_send_message(self, message: Message) -> None:
Expand Down
2 changes: 1 addition & 1 deletion tests/utils/test_pipe_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ def test_retrieve_message_after_waiting(message_buffer: MessageBuffer):

def fake_check_message_in_buffer(conversation_id: bytes) -> Message | None:
return msg_list.pop(0)
message_buffer._check_message_in_buffer = fake_check_message_in_buffer
message_buffer._check_message_in_buffer = fake_check_message_in_buffer # type:ignore
message_buffer._event.set()
# Act + Assert
assert message_buffer.retrieve_message(conversation_id=cid) == msg
Expand Down

0 comments on commit 1aec32b

Please sign in to comment.