From 61a3777eb82896afbb2472017210c7642751ecc2 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 Nov 2023 19:52:16 +0100 Subject: Merging upstream version 1.14.0. Signed-off-by: Daniel Baumann --- iredis/client.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'iredis/client.py') diff --git a/iredis/client.py b/iredis/client.py index bbdb87c..f7164b8 100644 --- a/iredis/client.py +++ b/iredis/client.py @@ -4,9 +4,10 @@ IRedis client. import re import os import sys +import codecs import logging from subprocess import run -from importlib_resources import read_text +from importlib.resources import read_text from packaging.version import parse as version_parse import redis @@ -94,6 +95,7 @@ class Client: try: self.connection.connect() except Exception as e: + logger.exception("Can not create connection to server") print(str(e), file=sys.stderr) sys.exit(1) if not config.no_info: @@ -282,6 +284,7 @@ class Client: connection.connect() logger.info(f"New connection created, retry on {connection}.") logger.info(f"send_command: {command_name} , {args}") + connection.send_command(command_name, *args) response = connection.read_response() except AuthenticationError: @@ -547,6 +550,12 @@ class Client: if command_name.upper() in ["ZSCAN", "ZPOPMAX", "ZPOPMIN"]: config.withscores = True + # TODO should we using escape_decode on all strings?? + if command_name.upper() == "RESTORE": + for i, a in enumerate(args): + serialized_value = codecs.escape_decode(a)[0] + args[i] = serialized_value + # not a tty if not completer: logger.warning( -- cgit v1.2.3