From 825b2df1b2d6c5763120b414dc387f90bd86d706 Mon Sep 17 00:00:00 2001
From: Gleb Kashkin <g.kashkin@tarantool.org>
Date: Sun, 26 Mar 2023 13:21:25 +0300
Subject: [PATCH] console: fix :endswith() err in tntctl connection

There used to be a rare error when failed to connect via tarantoolctl to
listening cartridge console. It was caused by unclear
console.local_print() contract. Starting from gh-7031 fix, the function
assumed string-only arguments, while in some cases cdata error was
passed.

Now console.local_print() prints all non-string arguments as is, without
modifying potential local_eos.

Closes #8374

NO_DOC=bugfix
NO_TEST=very hard to test
---
 .../unreleased/gh-8374-local-print-accepts-non-strings.md   | 6 ++++++
 1 file changed, 6 insertions(+)
 create mode 100644 changelogs/unreleased/gh-8374-local-print-accepts-non-strings.md

diff --git a/changelogs/unreleased/gh-8374-local-print-accepts-non-strings.md b/changelogs/unreleased/gh-8374-local-print-accepts-non-strings.md
new file mode 100644
index 0000000000..06d96bf3ef
--- /dev/null
+++ b/changelogs/unreleased/gh-8374-local-print-accepts-non-strings.md
@@ -0,0 +1,6 @@
+## bugfix/console
+
+* Fixed `console.local_print()` accepting only string arguments. It backfired in
+  some rare cases, e.g. when connecting via tarantoolctl to cartridged tarantool
+  and using wrong credentials, a cdata error was passed through the
+  `local_print()`, that failed to interpret it (gh-8374).
-- 
GitLab