Skip to content

Commit 59f3870

Browse files
committed
Merge remote-tracking branch 'origin/main' into feat/341/rework-password-logic
2 parents dd2346f + d94ca37 commit 59f3870

File tree

4 files changed

+26
-17
lines changed

4 files changed

+26
-17
lines changed

mycli/main.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -776,7 +776,10 @@ def output_res(results: Generator[SQLResult], start: float) -> None:
776776
nonlocal mutating
777777
result_count = 0
778778
for result in results:
779-
title, cur, headers, status = result.get_output()
779+
title = result.title
780+
cur = result.results
781+
headers = result.headers
782+
status = result.status
780783
command = result.command
781784
logger.debug("title: %r", title)
782785
logger.debug("headers: %r", headers)
@@ -793,7 +796,7 @@ def output_res(results: Generator[SQLResult], start: float) -> None:
793796
except ValueError as e:
794797
self.echo(f"Invalid watch sleep time provided ({e}).", err=True, fg="red")
795798
sys.exit(1)
796-
if is_select(status) and cur and cur.rowcount > threshold:
799+
if is_select(status) and isinstance(cur, Cursor) and cur.rowcount > threshold:
797800
self.echo(
798801
f"The result set has more than {threshold} rows.",
799802
fg="red",
@@ -843,7 +846,10 @@ def output_res(results: Generator[SQLResult], start: float) -> None:
843846
if self.show_warnings and isinstance(cur, Cursor) and cur.warning_count > 0:
844847
warnings = sqlexecute.run("SHOW WARNINGS")
845848
for warning in warnings:
846-
title, cur, headers, status = warning.get_output()
849+
title = warning.title
850+
cur = warning.results
851+
headers = warning.headers
852+
status = warning.status
847853
formatted = self.format_output(
848854
title,
849855
cur,
@@ -1307,7 +1313,9 @@ def run_query(self, query: str, new_line: bool = True) -> None:
13071313
assert self.sqlexecute is not None
13081314
results = self.sqlexecute.run(query)
13091315
for result in results:
1310-
title, cur, headers, _status = result.get_output()
1316+
title = result.title
1317+
cur = result.results
1318+
headers = result.headers
13111319
self.main_formatter.query = query
13121320
self.redirect_formatter.query = query
13131321
output = self.format_output(
@@ -1325,7 +1333,9 @@ def run_query(self, query: str, new_line: bool = True) -> None:
13251333
if self.show_warnings and isinstance(cur, Cursor) and cur.warning_count > 0:
13261334
warnings = self.sqlexecute.run("SHOW WARNINGS")
13271335
for warning in warnings:
1328-
title, cur, headers, _status = warning.get_output()
1336+
title = warning.title
1337+
cur = warning.results
1338+
headers = warning.headers
13291339
output = self.format_output(
13301340
title,
13311341
cur,
@@ -1341,7 +1351,7 @@ def format_output(
13411351
self,
13421352
title: str | None,
13431353
cur: Cursor | list[tuple] | None,
1344-
headers: list[str] | None,
1354+
headers: list[str] | str | None,
13451355
expanded: bool = False,
13461356
is_redirected: bool = False,
13471357
null_string: str | None = None,

mycli/packages/sqlresult.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@ class SQLResult:
1111
status: str | None = None
1212
command: dict[str, str | float] | None = None
1313

14-
def get_output(self):
15-
return self.title, self.results, self.headers, self.status
16-
1714
def __iter__(self):
1815
return self
1916

mycli/sqlexecute.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -491,8 +491,12 @@ def reset_connection_id(self) -> None:
491491
try:
492492
results = self.run("select connection_id()")
493493
for result in results:
494-
_title, cur, _headers, _status = result.get_output()
495-
self.connection_id = cur.fetchone()[0]
494+
cur = result.results
495+
if isinstance(cur, Cursor):
496+
v = cur.fetchone()
497+
self.connection_id = v[0] if v is not None else -1
498+
else:
499+
raise ValueError
496500
except Exception as e:
497501
# See #1054
498502
self.connection_id = -1

test/utils.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,10 @@ def run(executor, sql, rows_as_list=True):
5151
results = []
5252

5353
for result in executor.run(sql):
54-
(
55-
title,
56-
rows,
57-
headers,
58-
status,
59-
) = result.get_output()
54+
title = result.title
55+
rows = result.results
56+
headers = result.headers
57+
status = result.status
6058
rows = list(rows) if (rows_as_list and rows) else rows
6159
results.append({"title": title, "rows": rows, "headers": headers, "status": status})
6260

0 commit comments

Comments
 (0)