From be5d0ab9b5ad18e35cde15439183ff114fce56d0 Mon Sep 17 00:00:00 2001 From: shouzy <82171453+realshouzy@users.noreply.github.com> Date: Wed, 15 May 2024 14:55:51 +0200 Subject: [PATCH] Improve `Connection` --- nrw/network/_connection.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/nrw/network/_connection.py b/nrw/network/_connection.py index 6ce14c8..5ef1401 100644 --- a/nrw/network/_connection.py +++ b/nrw/network/_connection.py @@ -33,8 +33,14 @@ def __init__(self, server_ip: str, server_port: int) -> None: socket.SOCK_STREAM, ) self._socket.connect((server_ip, server_port)) - self._to_server: TextIOWrapper | None = self._socket.makefile(mode="w") - self._from_server: TextIOWrapper | None = self._socket.makefile(mode="r") + self._to_server: TextIOWrapper | None = self._socket.makefile( + mode="w", + encoding="utf-8", + ) + self._from_server: TextIOWrapper | None = self._socket.makefile( + mode="r", + encoding="utf-8", + ) except Exception: # pylint: disable=W0718 self._socket = None self._to_server = None @@ -42,14 +48,15 @@ def __init__(self, server_ip: str, server_port: int) -> None: def receive(self) -> str | None: if self._from_server is not None: - with suppress(IOError): + with suppress(IOError, ValueError): return self._from_server.readline() return None def send(self, message: str) -> None: if self._to_server is not None: - self._to_server.write(f"{message}\n") - self._to_server.flush() + with suppress(ValueError): + self._to_server.write(f"{message}\n") + self._to_server.flush() def close(self) -> None: if self._socket is not None: