diff --git a/changelog.md b/changelog.md index bb79cc6e..15140b1d 100644 --- a/changelog.md +++ b/changelog.md @@ -18,6 +18,7 @@ Internal --------- * Use prompt_toolkit's `bell()`. * Refactor `SQLResult` dataclass. +* Avoid depending on string matches into host info. 1.58.0 (2026/02/28) diff --git a/mycli/packages/special/dbcommands.py b/mycli/packages/special/dbcommands.py index c4f310df..06ca8b75 100644 --- a/mycli/packages/special/dbcommands.py +++ b/mycli/packages/special/dbcommands.py @@ -128,7 +128,7 @@ def status(cur: Cursor, **_) -> list[SQLResult]: output.append(("Protocol version:", variables["protocol_version"])) output.append(('SSL/TLS version:', get_ssl_version(cur))) - if getattr(cur.connection, 'unix_socket', None) is not None: + if getattr(cur.connection, 'unix_socket', None): host_info = cur.connection.host_info else: host_info = f'{cur.connection.host} via TCP/IP' @@ -147,10 +147,10 @@ def status(cur: Cursor, **_) -> list[SQLResult]: output.append(("Client characterset:", charset[2])) output.append(("Conn. characterset:", charset[3])) - if "TCP/IP" in host_info: - output.append(("TCP port:", cur.connection.port)) + if getattr(cur.connection, 'unix_socket', None): + output.append(('UNIX socket:', variables['socket'])) else: - output.append(("UNIX socket:", variables["socket"])) + output.append(('TCP port:', cur.connection.port)) if "Uptime" in status: output.append(("Uptime:", format_uptime(status["Uptime"])))